/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/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/loops-crafted-1/theatreSquare.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 22:23:54,645 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 22:23:54,647 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 22:23:54,707 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 22:23:54,708 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 22:23:54,724 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 22:23:54,725 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 22:23:54,726 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 22:23:54,727 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 22:23:54,727 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 22:23:54,728 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 22:23:54,728 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 22:23:54,729 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 22:23:54,729 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 22:23:54,730 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 22:23:54,731 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 22:23:54,731 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 22:23:54,732 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 22:23:54,733 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 22:23:54,734 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 22:23:54,746 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 22:23:54,749 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 22:23:54,750 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 22:23:54,751 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 22:23:54,751 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 22:23:54,753 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 22:23:54,753 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 22:23:54,753 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 22:23:54,753 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 22:23:54,754 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 22:23:54,754 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 22:23:54,754 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 22:23:54,755 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 22:23:54,755 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 22:23:54,756 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 22:23:54,756 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 22:23:54,756 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 22:23:54,757 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 22:23:54,757 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 22:23:54,757 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 22:23:54,758 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 22:23:54,763 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 22:23:54,764 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-27 22:23:54,778 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 22:23:54,778 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 22:23:54,779 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 22:23:54,795 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 22:23:54,796 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 22:23:54,796 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 22:23:54,796 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 22:23:54,796 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 22:23:54,796 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 22:23:54,796 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 22:23:54,796 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 22:23:54,797 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 22:23:54,797 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:23:54,797 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 22:23:54,798 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 22:23:54,798 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 22:23:54,798 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 22:23:54,798 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 22:23:54,798 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 22:23:54,798 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-27 22:23:54,798 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-27 22:23:54,799 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 22:23:54,799 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR 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-27 22:23:54,946 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 22:23:54,963 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 22:23:54,965 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 22:23:54,965 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 22:23:54,966 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 22:23:54,967 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops-crafted-1/theatreSquare.c [2022-04-27 22:23:55,024 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6282dbb6e/952aa92e84844ba68796c706829b7e48/FLAG4fe001093 [2022-04-27 22:23:55,402 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 22:23:55,403 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/theatreSquare.c [2022-04-27 22:23:55,411 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6282dbb6e/952aa92e84844ba68796c706829b7e48/FLAG4fe001093 [2022-04-27 22:23:55,802 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6282dbb6e/952aa92e84844ba68796c706829b7e48 [2022-04-27 22:23:55,806 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 22:23:55,806 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 22:23:55,807 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 22:23:55,808 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 22:23:55,811 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 22:23:55,812 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:23:55" (1/1) ... [2022-04-27 22:23:55,813 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7e5f7e14 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:55, skipping insertion in model container [2022-04-27 22:23:55,813 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:23:55" (1/1) ... [2022-04-27 22:23:55,817 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 22:23:55,833 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 22:23:55,949 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/theatreSquare.c[370,383] [2022-04-27 22:23:55,968 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:23:55,976 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 22:23:55,983 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/theatreSquare.c[370,383] [2022-04-27 22:23:55,994 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 22:23:56,003 INFO L208 MainTranslator]: Completed translation [2022-04-27 22:23:56,003 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56 WrapperNode [2022-04-27 22:23:56,003 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 22:23:56,004 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 22:23:56,004 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 22:23:56,005 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 22:23:56,033 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,034 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,039 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,039 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,054 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,059 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,060 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,061 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 22:23:56,062 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 22:23:56,062 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 22:23:56,062 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 22:23:56,065 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,070 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 22:23:56,077 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:23:56,086 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-27 22:23:56,095 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-27 22:23:56,110 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 22:23:56,111 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 22:23:56,111 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 22:23:56,111 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 22:23:56,111 INFO L138 BoogieDeclarations]: Found implementation of procedure correct_version [2022-04-27 22:23:56,111 INFO L138 BoogieDeclarations]: Found implementation of procedure student_version [2022-04-27 22:23:56,111 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 22:23:56,111 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 22:23:56,111 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 22:23:56,111 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 22:23:56,111 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure correct_version [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure student_version [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 22:23:56,112 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 22:23:56,156 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 22:23:56,157 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 22:23:56,392 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 22:23:56,397 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 22:23:56,397 INFO L299 CfgBuilder]: Removed 6 assume(true) statements. [2022-04-27 22:23:56,398 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:23:56 BoogieIcfgContainer [2022-04-27 22:23:56,398 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 22:23:56,398 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 22:23:56,398 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 22:23:56,401 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 22:23:56,402 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:23:56" (1/1) ... [2022-04-27 22:23:56,404 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-27 22:23:56,453 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:23:56 BasicIcfg [2022-04-27 22:23:56,453 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 22:23:56,454 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 22:23:56,454 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 22:23:56,462 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 22:23:56,462 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 10:23:55" (1/4) ... [2022-04-27 22:23:56,462 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@b84d11b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:23:56, skipping insertion in model container [2022-04-27 22:23:56,463 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:23:56" (2/4) ... [2022-04-27 22:23:56,463 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@b84d11b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:23:56, skipping insertion in model container [2022-04-27 22:23:56,463 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:23:56" (3/4) ... [2022-04-27 22:23:56,463 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@b84d11b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 10:23:56, skipping insertion in model container [2022-04-27 22:23:56,463 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 10:23:56" (4/4) ... [2022-04-27 22:23:56,464 INFO L111 eAbstractionObserver]: Analyzing ICFG theatreSquare.cqvasr [2022-04-27 22:23:56,472 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 22:23:56,472 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 22:23:56,514 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 22:23:56,518 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@78b51650, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@3e5aa32f [2022-04-27 22:23:56,518 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 22:23:56,527 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 28 states have internal predecessors, (42), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 22:23:56,531 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-04-27 22:23:56,531 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:23:56,531 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:23:56,532 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:23:56,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:23:56,537 INFO L85 PathProgramCache]: Analyzing trace with hash 1121522138, now seen corresponding path program 1 times [2022-04-27 22:23:56,543 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:23:56,543 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1726868942] [2022-04-27 22:23:56,543 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:23:56,543 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:23:56,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:56,737 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:23:56,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:56,747 INFO L290 TraceCheckUtils]: 0: Hoare triple {50#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-27 22:23:56,747 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-27 22:23:56,747 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-27 22:23:56,752 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:23:56,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {50#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-27 22:23:56,753 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-27 22:23:56,753 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-27 22:23:56,753 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-27 22:23:56,757 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {47#(= main_~n_stones2~0 main_~n_stones1~0)} is VALID [2022-04-27 22:23:56,758 INFO L290 TraceCheckUtils]: 6: Hoare triple {47#(= main_~n_stones2~0 main_~n_stones1~0)} [127] L97-->L97-2: Formula: (or (not (<= 1 v_main_~m~0_1)) (not (<= v_main_~n~0_1 109)) (not (<= 1 v_main_~n~0_1)) (not (<= 1 v_main_~a~0_1)) (not (<= v_main_~m~0_1 109)) (not (<= v_main_~a~0_1 109))) InVars {main_~n~0=v_main_~n~0_1, main_~m~0=v_main_~m~0_1, main_~a~0=v_main_~a~0_1} OutVars{main_~n~0=v_main_~n~0_1, main_~m~0=v_main_~m~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[] {47#(= main_~n_stones2~0 main_~n_stones1~0)} is VALID [2022-04-27 22:23:56,758 INFO L272 TraceCheckUtils]: 7: Hoare triple {47#(= main_~n_stones2~0 main_~n_stones1~0)} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {48#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:23:56,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {48#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {49#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:23:56,759 INFO L290 TraceCheckUtils]: 9: Hoare triple {49#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-27 22:23:56,760 INFO L290 TraceCheckUtils]: 10: Hoare triple {43#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-27 22:23:56,760 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 22:23:56,760 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:23:56,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1726868942] [2022-04-27 22:23:56,761 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1726868942] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:23:56,761 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:23:56,761 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:23:56,764 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1562780797] [2022-04-27 22:23:56,764 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:23:56,768 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 1.1666666666666667) internal successors, (7), 4 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-04-27 22:23:56,769 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:23:56,771 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 1.1666666666666667) internal successors, (7), 4 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 22:23:56,804 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:56,805 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:23:56,805 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:23:56,830 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:23:56,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:23:56,833 INFO L87 Difference]: Start difference. First operand has 39 states, 27 states have (on average 1.5555555555555556) internal successors, (42), 28 states have internal predecessors, (42), 5 states have call successors, (5), 5 states have call predecessors, (5), 5 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand has 6 states, 6 states have (on average 1.1666666666666667) internal successors, (7), 4 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 22:23:57,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:57,189 INFO L93 Difference]: Finished difference Result 76 states and 103 transitions. [2022-04-27 22:23:57,189 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 22:23:57,189 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 1.1666666666666667) internal successors, (7), 4 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-04-27 22:23:57,190 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:23:57,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 1.1666666666666667) internal successors, (7), 4 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 22:23:57,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 103 transitions. [2022-04-27 22:23:57,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 1.1666666666666667) internal successors, (7), 4 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 22:23:57,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 103 transitions. [2022-04-27 22:23:57,203 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 103 transitions. [2022-04-27 22:23:57,316 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-27 22:23:57,325 INFO L225 Difference]: With dead ends: 76 [2022-04-27 22:23:57,325 INFO L226 Difference]: Without dead ends: 32 [2022-04-27 22:23:57,327 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-27 22:23:57,331 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 46 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 121 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 61 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 121 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:23:57,333 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [48 Valid, 61 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 121 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:23:57,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-27 22:23:57,354 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-27 22:23:57,354 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:23:57,355 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:57,356 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:57,356 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:57,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:57,360 INFO L93 Difference]: Finished difference Result 32 states and 37 transitions. [2022-04-27 22:23:57,360 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 37 transitions. [2022-04-27 22:23:57,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:57,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:57,361 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 32 states. [2022-04-27 22:23:57,362 INFO L87 Difference]: Start difference. First operand has 32 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 32 states. [2022-04-27 22:23:57,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:57,365 INFO L93 Difference]: Finished difference Result 32 states and 37 transitions. [2022-04-27 22:23:57,365 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 37 transitions. [2022-04-27 22:23:57,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:57,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:57,366 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:23:57,366 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:23:57,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 23 states have internal predecessors, (29), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:57,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 37 transitions. [2022-04-27 22:23:57,369 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 37 transitions. Word has length 11 [2022-04-27 22:23:57,374 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:23:57,374 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 37 transitions. [2022-04-27 22:23:57,374 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 1.1666666666666667) internal successors, (7), 4 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 22:23:57,375 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 37 transitions. [2022-04-27 22:23:57,375 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-27 22:23:57,375 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:23:57,376 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:23:57,376 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 22:23:57,376 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:23:57,377 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:23:57,377 INFO L85 PathProgramCache]: Analyzing trace with hash -1342094697, now seen corresponding path program 1 times [2022-04-27 22:23:57,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:23:57,377 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1947388173] [2022-04-27 22:23:57,377 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:23:57,378 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:23:57,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:57,472 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:23:57,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:57,478 INFO L290 TraceCheckUtils]: 0: Hoare triple {297#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {270#true} is VALID [2022-04-27 22:23:57,478 INFO L290 TraceCheckUtils]: 1: Hoare triple {270#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,478 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {270#true} {270#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,478 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:23:57,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:57,520 INFO L290 TraceCheckUtils]: 0: Hoare triple {270#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {270#true} is VALID [2022-04-27 22:23:57,520 INFO L290 TraceCheckUtils]: 1: Hoare triple {270#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,520 INFO L290 TraceCheckUtils]: 2: Hoare triple {270#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,521 INFO L290 TraceCheckUtils]: 3: Hoare triple {270#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} is VALID [2022-04-27 22:23:57,521 INFO L290 TraceCheckUtils]: 4: Hoare triple {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} is VALID [2022-04-27 22:23:57,523 INFO L290 TraceCheckUtils]: 5: Hoare triple {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} is VALID [2022-04-27 22:23:57,524 INFO L290 TraceCheckUtils]: 6: Hoare triple {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} is VALID [2022-04-27 22:23:57,525 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} {270#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {283#(= |main_#t~ret8| 0)} is VALID [2022-04-27 22:23:57,525 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 22:23:57,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:57,572 INFO L290 TraceCheckUtils]: 0: Hoare triple {270#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {270#true} is VALID [2022-04-27 22:23:57,572 INFO L290 TraceCheckUtils]: 1: Hoare triple {270#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,572 INFO L290 TraceCheckUtils]: 2: Hoare triple {270#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,573 INFO L290 TraceCheckUtils]: 3: Hoare triple {270#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} is VALID [2022-04-27 22:23:57,573 INFO L290 TraceCheckUtils]: 4: Hoare triple {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} is VALID [2022-04-27 22:23:57,574 INFO L290 TraceCheckUtils]: 5: Hoare triple {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {301#(= |student_version_#res| 0)} is VALID [2022-04-27 22:23:57,575 INFO L290 TraceCheckUtils]: 6: Hoare triple {301#(= |student_version_#res| 0)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {301#(= |student_version_#res| 0)} is VALID [2022-04-27 22:23:57,576 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {301#(= |student_version_#res| 0)} {284#(= main_~n_stones1~0 0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {293#(= main_~n_stones1~0 |main_#t~ret9|)} is VALID [2022-04-27 22:23:57,576 INFO L272 TraceCheckUtils]: 0: Hoare triple {270#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {297#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:23:57,576 INFO L290 TraceCheckUtils]: 1: Hoare triple {297#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {270#true} is VALID [2022-04-27 22:23:57,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {270#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {270#true} {270#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,577 INFO L272 TraceCheckUtils]: 4: Hoare triple {270#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,577 INFO L290 TraceCheckUtils]: 5: Hoare triple {270#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {270#true} is VALID [2022-04-27 22:23:57,577 INFO L290 TraceCheckUtils]: 6: Hoare triple {270#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,578 INFO L272 TraceCheckUtils]: 7: Hoare triple {270#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {270#true} is VALID [2022-04-27 22:23:57,578 INFO L290 TraceCheckUtils]: 8: Hoare triple {270#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {270#true} is VALID [2022-04-27 22:23:57,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {270#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,578 INFO L290 TraceCheckUtils]: 10: Hoare triple {270#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {270#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} is VALID [2022-04-27 22:23:57,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} is VALID [2022-04-27 22:23:57,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {298#(and (<= correct_version_~y~0 0) (<= 0 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} is VALID [2022-04-27 22:23:57,580 INFO L290 TraceCheckUtils]: 14: Hoare triple {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} is VALID [2022-04-27 22:23:57,581 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {299#(and (<= 0 |correct_version_#res|) (<= |correct_version_#res| 0))} {270#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {283#(= |main_#t~ret8| 0)} is VALID [2022-04-27 22:23:57,582 INFO L290 TraceCheckUtils]: 16: Hoare triple {283#(= |main_#t~ret8| 0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {284#(= main_~n_stones1~0 0)} is VALID [2022-04-27 22:23:57,582 INFO L272 TraceCheckUtils]: 17: Hoare triple {284#(= main_~n_stones1~0 0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {270#true} is VALID [2022-04-27 22:23:57,582 INFO L290 TraceCheckUtils]: 18: Hoare triple {270#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {270#true} is VALID [2022-04-27 22:23:57,582 INFO L290 TraceCheckUtils]: 19: Hoare triple {270#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,583 INFO L290 TraceCheckUtils]: 20: Hoare triple {270#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-27 22:23:57,584 INFO L290 TraceCheckUtils]: 21: Hoare triple {270#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} is VALID [2022-04-27 22:23:57,585 INFO L290 TraceCheckUtils]: 22: Hoare triple {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} is VALID [2022-04-27 22:23:57,585 INFO L290 TraceCheckUtils]: 23: Hoare triple {300#(and (<= 0 student_version_~y~1) (<= student_version_~y~1 0))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {301#(= |student_version_#res| 0)} is VALID [2022-04-27 22:23:57,586 INFO L290 TraceCheckUtils]: 24: Hoare triple {301#(= |student_version_#res| 0)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {301#(= |student_version_#res| 0)} is VALID [2022-04-27 22:23:57,586 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {301#(= |student_version_#res| 0)} {284#(= main_~n_stones1~0 0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {293#(= main_~n_stones1~0 |main_#t~ret9|)} is VALID [2022-04-27 22:23:57,588 INFO L290 TraceCheckUtils]: 26: Hoare triple {293#(= main_~n_stones1~0 |main_#t~ret9|)} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {294#(= main_~n_stones2~0 main_~n_stones1~0)} is VALID [2022-04-27 22:23:57,588 INFO L272 TraceCheckUtils]: 27: Hoare triple {294#(= main_~n_stones2~0 main_~n_stones1~0)} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {295#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:23:57,589 INFO L290 TraceCheckUtils]: 28: Hoare triple {295#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {296#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:23:57,589 INFO L290 TraceCheckUtils]: 29: Hoare triple {296#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {271#false} is VALID [2022-04-27 22:23:57,589 INFO L290 TraceCheckUtils]: 30: Hoare triple {271#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {271#false} is VALID [2022-04-27 22:23:57,590 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 22:23:57,590 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:23:57,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1947388173] [2022-04-27 22:23:57,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1947388173] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:23:57,590 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:23:57,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-27 22:23:57,590 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [928462705] [2022-04-27 22:23:57,591 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:23:57,592 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 2.090909090909091) internal successors, (23), 9 states have internal predecessors, (23), 3 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-27 22:23:57,592 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:23:57,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 11 states have (on average 2.090909090909091) internal successors, (23), 9 states have internal predecessors, (23), 3 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:57,620 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:57,620 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 22:23:57,620 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:23:57,621 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 22:23:57,621 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=133, Unknown=0, NotChecked=0, Total=156 [2022-04-27 22:23:57,621 INFO L87 Difference]: Start difference. First operand 32 states and 37 transitions. Second operand has 13 states, 11 states have (on average 2.090909090909091) internal successors, (23), 9 states have internal predecessors, (23), 3 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:58,290 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-04-27 22:23:58,290 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 22:23:58,291 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 2.090909090909091) internal successors, (23), 9 states have internal predecessors, (23), 3 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-27 22:23:58,291 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:23:58,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 2.090909090909091) internal successors, (23), 9 states have internal predecessors, (23), 3 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 58 transitions. [2022-04-27 22:23:58,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 2.090909090909091) internal successors, (23), 9 states have internal predecessors, (23), 3 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 58 transitions. [2022-04-27 22:23:58,295 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 58 transitions. [2022-04-27 22:23:58,338 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:58,349 INFO L225 Difference]: With dead ends: 50 [2022-04-27 22:23:58,349 INFO L226 Difference]: Without dead ends: 44 [2022-04-27 22:23:58,350 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=80, Invalid=472, Unknown=0, NotChecked=0, Total=552 [2022-04-27 22:23:58,350 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 42 mSDsluCounter, 52 mSDsCounter, 0 mSdLazyCounter, 335 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 80 SdHoareTripleChecker+Invalid, 356 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 335 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:23:58,351 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [44 Valid, 80 Invalid, 356 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 335 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 22:23:58,351 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-27 22:23:58,361 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 42. [2022-04-27 22:23:58,361 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:23:58,361 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 42 states, 30 states have (on average 1.2666666666666666) internal successors, (38), 32 states have internal predecessors, (38), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,361 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 42 states, 30 states have (on average 1.2666666666666666) internal successors, (38), 32 states have internal predecessors, (38), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,362 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 42 states, 30 states have (on average 1.2666666666666666) internal successors, (38), 32 states have internal predecessors, (38), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:58,364 INFO L93 Difference]: Finished difference Result 44 states and 52 transitions. [2022-04-27 22:23:58,364 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 52 transitions. [2022-04-27 22:23:58,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:58,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:58,365 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 30 states have (on average 1.2666666666666666) internal successors, (38), 32 states have internal predecessors, (38), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 44 states. [2022-04-27 22:23:58,365 INFO L87 Difference]: Start difference. First operand has 42 states, 30 states have (on average 1.2666666666666666) internal successors, (38), 32 states have internal predecessors, (38), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 44 states. [2022-04-27 22:23:58,367 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:58,367 INFO L93 Difference]: Finished difference Result 44 states and 52 transitions. [2022-04-27 22:23:58,367 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 52 transitions. [2022-04-27 22:23:58,367 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:58,367 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:58,367 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:23:58,367 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:23:58,368 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 30 states have (on average 1.2666666666666666) internal successors, (38), 32 states have internal predecessors, (38), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 50 transitions. [2022-04-27 22:23:58,369 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 50 transitions. Word has length 31 [2022-04-27 22:23:58,369 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:23:58,369 INFO L495 AbstractCegarLoop]: Abstraction has 42 states and 50 transitions. [2022-04-27 22:23:58,370 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 11 states have (on average 2.090909090909091) internal successors, (23), 9 states have internal predecessors, (23), 3 states have call successors, (5), 3 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,370 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 50 transitions. [2022-04-27 22:23:58,370 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-27 22:23:58,370 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:23:58,371 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:23:58,371 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-27 22:23:58,371 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:23:58,371 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:23:58,371 INFO L85 PathProgramCache]: Analyzing trace with hash 1260090278, now seen corresponding path program 1 times [2022-04-27 22:23:58,371 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:23:58,371 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1453859986] [2022-04-27 22:23:58,372 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:23:58,372 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:23:58,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,400 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:23:58,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,405 INFO L290 TraceCheckUtils]: 0: Hoare triple {566#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {544#true} is VALID [2022-04-27 22:23:58,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {544#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,405 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {544#true} {544#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,405 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:23:58,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,410 INFO L290 TraceCheckUtils]: 0: Hoare triple {544#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {544#true} is VALID [2022-04-27 22:23:58,410 INFO L290 TraceCheckUtils]: 1: Hoare triple {544#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {544#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,410 INFO L290 TraceCheckUtils]: 3: Hoare triple {544#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {544#true} is VALID [2022-04-27 22:23:58,410 INFO L290 TraceCheckUtils]: 4: Hoare triple {544#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,410 INFO L290 TraceCheckUtils]: 5: Hoare triple {544#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {544#true} is VALID [2022-04-27 22:23:58,410 INFO L290 TraceCheckUtils]: 6: Hoare triple {544#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,411 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {544#true} {544#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {544#true} is VALID [2022-04-27 22:23:58,411 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 22:23:58,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,427 INFO L290 TraceCheckUtils]: 0: Hoare triple {544#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {567#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:23:58,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {567#(<= student_version_~i~1 0)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {567#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:23:58,428 INFO L290 TraceCheckUtils]: 2: Hoare triple {567#(<= student_version_~i~1 0)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {567#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:23:58,428 INFO L290 TraceCheckUtils]: 3: Hoare triple {567#(<= student_version_~i~1 0)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {568#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:23:58,429 INFO L290 TraceCheckUtils]: 4: Hoare triple {568#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {545#false} is VALID [2022-04-27 22:23:58,429 INFO L290 TraceCheckUtils]: 5: Hoare triple {545#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {545#false} is VALID [2022-04-27 22:23:58,429 INFO L290 TraceCheckUtils]: 6: Hoare triple {545#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {545#false} is VALID [2022-04-27 22:23:58,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {545#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#false} is VALID [2022-04-27 22:23:58,429 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {545#false} {544#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {545#false} is VALID [2022-04-27 22:23:58,430 INFO L272 TraceCheckUtils]: 0: Hoare triple {544#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {566#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:23:58,430 INFO L290 TraceCheckUtils]: 1: Hoare triple {566#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {544#true} is VALID [2022-04-27 22:23:58,430 INFO L290 TraceCheckUtils]: 2: Hoare triple {544#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,430 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {544#true} {544#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,430 INFO L272 TraceCheckUtils]: 4: Hoare triple {544#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,430 INFO L290 TraceCheckUtils]: 5: Hoare triple {544#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {544#true} is VALID [2022-04-27 22:23:58,430 INFO L290 TraceCheckUtils]: 6: Hoare triple {544#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,431 INFO L272 TraceCheckUtils]: 7: Hoare triple {544#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {544#true} is VALID [2022-04-27 22:23:58,431 INFO L290 TraceCheckUtils]: 8: Hoare triple {544#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {544#true} is VALID [2022-04-27 22:23:58,431 INFO L290 TraceCheckUtils]: 9: Hoare triple {544#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,431 INFO L290 TraceCheckUtils]: 10: Hoare triple {544#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,431 INFO L290 TraceCheckUtils]: 11: Hoare triple {544#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {544#true} is VALID [2022-04-27 22:23:58,431 INFO L290 TraceCheckUtils]: 12: Hoare triple {544#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,431 INFO L290 TraceCheckUtils]: 13: Hoare triple {544#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {544#true} is VALID [2022-04-27 22:23:58,432 INFO L290 TraceCheckUtils]: 14: Hoare triple {544#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {544#true} is VALID [2022-04-27 22:23:58,432 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {544#true} {544#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {544#true} is VALID [2022-04-27 22:23:58,432 INFO L290 TraceCheckUtils]: 16: Hoare triple {544#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {544#true} is VALID [2022-04-27 22:23:58,432 INFO L272 TraceCheckUtils]: 17: Hoare triple {544#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {544#true} is VALID [2022-04-27 22:23:58,432 INFO L290 TraceCheckUtils]: 18: Hoare triple {544#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {567#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:23:58,433 INFO L290 TraceCheckUtils]: 19: Hoare triple {567#(<= student_version_~i~1 0)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {567#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:23:58,433 INFO L290 TraceCheckUtils]: 20: Hoare triple {567#(<= student_version_~i~1 0)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {567#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:23:58,433 INFO L290 TraceCheckUtils]: 21: Hoare triple {567#(<= student_version_~i~1 0)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {568#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:23:58,434 INFO L290 TraceCheckUtils]: 22: Hoare triple {568#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {545#false} is VALID [2022-04-27 22:23:58,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {545#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {545#false} is VALID [2022-04-27 22:23:58,434 INFO L290 TraceCheckUtils]: 24: Hoare triple {545#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {545#false} is VALID [2022-04-27 22:23:58,434 INFO L290 TraceCheckUtils]: 25: Hoare triple {545#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#false} is VALID [2022-04-27 22:23:58,434 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {545#false} {544#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {545#false} is VALID [2022-04-27 22:23:58,434 INFO L290 TraceCheckUtils]: 27: Hoare triple {545#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {545#false} is VALID [2022-04-27 22:23:58,435 INFO L272 TraceCheckUtils]: 28: Hoare triple {545#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {545#false} is VALID [2022-04-27 22:23:58,435 INFO L290 TraceCheckUtils]: 29: Hoare triple {545#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {545#false} is VALID [2022-04-27 22:23:58,435 INFO L290 TraceCheckUtils]: 30: Hoare triple {545#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {545#false} is VALID [2022-04-27 22:23:58,435 INFO L290 TraceCheckUtils]: 31: Hoare triple {545#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {545#false} is VALID [2022-04-27 22:23:58,435 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 22:23:58,435 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:23:58,435 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1453859986] [2022-04-27 22:23:58,436 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1453859986] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:23:58,436 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:23:58,436 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 22:23:58,436 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1654853234] [2022-04-27 22:23:58,436 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:23:58,436 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 32 [2022-04-27 22:23:58,437 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:23:58,437 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:23:58,454 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-27 22:23:58,454 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 22:23:58,454 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:23:58,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 22:23:58,455 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 22:23:58,455 INFO L87 Difference]: Start difference. First operand 42 states and 50 transitions. Second operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:23:58,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:58,610 INFO L93 Difference]: Finished difference Result 59 states and 71 transitions. [2022-04-27 22:23:58,610 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:23:58,610 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 32 [2022-04-27 22:23:58,611 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:23:58,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:23:58,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2022-04-27 22:23:58,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:23:58,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 57 transitions. [2022-04-27 22:23:58,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 57 transitions. [2022-04-27 22:23:58,654 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-27 22:23:58,655 INFO L225 Difference]: With dead ends: 59 [2022-04-27 22:23:58,655 INFO L226 Difference]: Without dead ends: 49 [2022-04-27 22:23:58,655 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-04-27 22:23:58,656 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 44 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:23:58,657 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 45 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:23:58,657 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-04-27 22:23:58,665 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 46. [2022-04-27 22:23:58,665 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:23:58,665 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 46 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 36 states have internal predecessors, (44), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,665 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 46 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 36 states have internal predecessors, (44), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,666 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 46 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 36 states have internal predecessors, (44), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:58,667 INFO L93 Difference]: Finished difference Result 49 states and 59 transitions. [2022-04-27 22:23:58,667 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 59 transitions. [2022-04-27 22:23:58,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:58,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:58,668 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 36 states have internal predecessors, (44), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 49 states. [2022-04-27 22:23:58,668 INFO L87 Difference]: Start difference. First operand has 46 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 36 states have internal predecessors, (44), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 49 states. [2022-04-27 22:23:58,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:58,670 INFO L93 Difference]: Finished difference Result 49 states and 59 transitions. [2022-04-27 22:23:58,670 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 59 transitions. [2022-04-27 22:23:58,671 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:58,671 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:58,671 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:23:58,671 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:23:58,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 34 states have (on average 1.2941176470588236) internal successors, (44), 36 states have internal predecessors, (44), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:58,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 56 transitions. [2022-04-27 22:23:58,672 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 56 transitions. Word has length 32 [2022-04-27 22:23:58,672 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:23:58,673 INFO L495 AbstractCegarLoop]: Abstraction has 46 states and 56 transitions. [2022-04-27 22:23:58,673 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:23:58,673 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 56 transitions. [2022-04-27 22:23:58,673 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-27 22:23:58,673 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:23:58,674 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:23:58,674 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-27 22:23:58,674 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:23:58,674 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:23:58,674 INFO L85 PathProgramCache]: Analyzing trace with hash 1332613463, now seen corresponding path program 1 times [2022-04-27 22:23:58,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:23:58,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [60352033] [2022-04-27 22:23:58,674 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:23:58,674 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:23:58,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,705 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:23:58,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,709 INFO L290 TraceCheckUtils]: 0: Hoare triple {843#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {821#true} is VALID [2022-04-27 22:23:58,709 INFO L290 TraceCheckUtils]: 1: Hoare triple {821#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,709 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {821#true} {821#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,710 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:23:58,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,737 INFO L290 TraceCheckUtils]: 0: Hoare triple {821#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {844#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:23:58,737 INFO L290 TraceCheckUtils]: 1: Hoare triple {844#(<= correct_version_~i~0 0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {844#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:23:58,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {844#(<= correct_version_~i~0 0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {844#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:23:58,739 INFO L290 TraceCheckUtils]: 3: Hoare triple {844#(<= correct_version_~i~0 0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {845#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:23:58,739 INFO L290 TraceCheckUtils]: 4: Hoare triple {845#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {822#false} is VALID [2022-04-27 22:23:58,740 INFO L290 TraceCheckUtils]: 5: Hoare triple {822#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {822#false} is VALID [2022-04-27 22:23:58,740 INFO L290 TraceCheckUtils]: 6: Hoare triple {822#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {822#false} is VALID [2022-04-27 22:23:58,740 INFO L290 TraceCheckUtils]: 7: Hoare triple {822#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {822#false} is VALID [2022-04-27 22:23:58,740 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {822#false} {821#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {822#false} is VALID [2022-04-27 22:23:58,740 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2022-04-27 22:23:58,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:58,753 INFO L290 TraceCheckUtils]: 0: Hoare triple {821#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {821#true} is VALID [2022-04-27 22:23:58,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {821#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,753 INFO L290 TraceCheckUtils]: 2: Hoare triple {821#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,753 INFO L290 TraceCheckUtils]: 3: Hoare triple {821#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {821#true} is VALID [2022-04-27 22:23:58,753 INFO L290 TraceCheckUtils]: 4: Hoare triple {821#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,753 INFO L290 TraceCheckUtils]: 5: Hoare triple {821#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {821#true} is VALID [2022-04-27 22:23:58,753 INFO L290 TraceCheckUtils]: 6: Hoare triple {821#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,753 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {821#true} {822#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {822#false} is VALID [2022-04-27 22:23:58,754 INFO L272 TraceCheckUtils]: 0: Hoare triple {821#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {843#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:23:58,754 INFO L290 TraceCheckUtils]: 1: Hoare triple {843#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {821#true} is VALID [2022-04-27 22:23:58,754 INFO L290 TraceCheckUtils]: 2: Hoare triple {821#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,754 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {821#true} {821#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,754 INFO L272 TraceCheckUtils]: 4: Hoare triple {821#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,755 INFO L290 TraceCheckUtils]: 5: Hoare triple {821#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {821#true} is VALID [2022-04-27 22:23:58,755 INFO L290 TraceCheckUtils]: 6: Hoare triple {821#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,755 INFO L272 TraceCheckUtils]: 7: Hoare triple {821#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {821#true} is VALID [2022-04-27 22:23:58,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {821#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {844#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:23:58,759 INFO L290 TraceCheckUtils]: 9: Hoare triple {844#(<= correct_version_~i~0 0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {844#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:23:58,760 INFO L290 TraceCheckUtils]: 10: Hoare triple {844#(<= correct_version_~i~0 0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {844#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:23:58,760 INFO L290 TraceCheckUtils]: 11: Hoare triple {844#(<= correct_version_~i~0 0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {845#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:23:58,760 INFO L290 TraceCheckUtils]: 12: Hoare triple {845#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {822#false} is VALID [2022-04-27 22:23:58,760 INFO L290 TraceCheckUtils]: 13: Hoare triple {822#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {822#false} is VALID [2022-04-27 22:23:58,760 INFO L290 TraceCheckUtils]: 14: Hoare triple {822#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {822#false} is VALID [2022-04-27 22:23:58,761 INFO L290 TraceCheckUtils]: 15: Hoare triple {822#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {822#false} is VALID [2022-04-27 22:23:58,761 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {822#false} {821#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {822#false} is VALID [2022-04-27 22:23:58,761 INFO L290 TraceCheckUtils]: 17: Hoare triple {822#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {822#false} is VALID [2022-04-27 22:23:58,761 INFO L272 TraceCheckUtils]: 18: Hoare triple {822#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {821#true} is VALID [2022-04-27 22:23:58,761 INFO L290 TraceCheckUtils]: 19: Hoare triple {821#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {821#true} is VALID [2022-04-27 22:23:58,761 INFO L290 TraceCheckUtils]: 20: Hoare triple {821#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,761 INFO L290 TraceCheckUtils]: 21: Hoare triple {821#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,761 INFO L290 TraceCheckUtils]: 22: Hoare triple {821#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {821#true} is VALID [2022-04-27 22:23:58,761 INFO L290 TraceCheckUtils]: 23: Hoare triple {821#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,762 INFO L290 TraceCheckUtils]: 24: Hoare triple {821#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {821#true} is VALID [2022-04-27 22:23:58,762 INFO L290 TraceCheckUtils]: 25: Hoare triple {821#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {821#true} is VALID [2022-04-27 22:23:58,762 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {821#true} {822#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {822#false} is VALID [2022-04-27 22:23:58,762 INFO L290 TraceCheckUtils]: 27: Hoare triple {822#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {822#false} is VALID [2022-04-27 22:23:58,762 INFO L272 TraceCheckUtils]: 28: Hoare triple {822#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {822#false} is VALID [2022-04-27 22:23:58,762 INFO L290 TraceCheckUtils]: 29: Hoare triple {822#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {822#false} is VALID [2022-04-27 22:23:58,762 INFO L290 TraceCheckUtils]: 30: Hoare triple {822#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {822#false} is VALID [2022-04-27 22:23:58,762 INFO L290 TraceCheckUtils]: 31: Hoare triple {822#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {822#false} is VALID [2022-04-27 22:23:58,762 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 22:23:58,763 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:23:58,763 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [60352033] [2022-04-27 22:23:58,763 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [60352033] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:23:58,763 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:23:58,763 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 22:23:58,763 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [189261234] [2022-04-27 22:23:58,763 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:23:58,763 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 32 [2022-04-27 22:23:58,764 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:23:58,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,785 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-27 22:23:58,785 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 22:23:58,785 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:23:58,785 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 22:23:58,785 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 22:23:58,785 INFO L87 Difference]: Start difference. First operand 46 states and 56 transitions. Second operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:58,944 INFO L93 Difference]: Finished difference Result 81 states and 100 transitions. [2022-04-27 22:23:58,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:23:58,944 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 32 [2022-04-27 22:23:58,944 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:23:58,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2022-04-27 22:23:58,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:58,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 70 transitions. [2022-04-27 22:23:58,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 70 transitions. [2022-04-27 22:23:58,995 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:58,997 INFO L225 Difference]: With dead ends: 81 [2022-04-27 22:23:58,997 INFO L226 Difference]: Without dead ends: 53 [2022-04-27 22:23:58,997 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-04-27 22:23:59,004 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 44 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:23:59,004 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [47 Valid, 45 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 22:23:59,004 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-27 22:23:59,014 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 50. [2022-04-27 22:23:59,015 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:23:59,015 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 50 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 40 states have internal predecessors, (50), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,015 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 50 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 40 states have internal predecessors, (50), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,015 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 50 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 40 states have internal predecessors, (50), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,017 INFO L93 Difference]: Finished difference Result 53 states and 65 transitions. [2022-04-27 22:23:59,017 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 65 transitions. [2022-04-27 22:23:59,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:59,017 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:59,017 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 40 states have internal predecessors, (50), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 53 states. [2022-04-27 22:23:59,018 INFO L87 Difference]: Start difference. First operand has 50 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 40 states have internal predecessors, (50), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 53 states. [2022-04-27 22:23:59,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,019 INFO L93 Difference]: Finished difference Result 53 states and 65 transitions. [2022-04-27 22:23:59,019 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 65 transitions. [2022-04-27 22:23:59,019 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:59,019 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:59,020 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:23:59,020 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:23:59,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 38 states have (on average 1.3157894736842106) internal successors, (50), 40 states have internal predecessors, (50), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 62 transitions. [2022-04-27 22:23:59,021 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 62 transitions. Word has length 32 [2022-04-27 22:23:59,021 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:23:59,021 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 62 transitions. [2022-04-27 22:23:59,022 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.8) internal successors, (24), 4 states have internal predecessors, (24), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:59,022 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 62 transitions. [2022-04-27 22:23:59,022 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 22:23:59,022 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:23:59,022 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:23:59,022 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-27 22:23:59,023 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:23:59,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:23:59,023 INFO L85 PathProgramCache]: Analyzing trace with hash -1056043469, now seen corresponding path program 1 times [2022-04-27 22:23:59,023 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:23:59,023 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [375767185] [2022-04-27 22:23:59,023 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:23:59,023 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:23:59,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,055 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:23:59,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,058 INFO L290 TraceCheckUtils]: 0: Hoare triple {1167#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1143#true} is VALID [2022-04-27 22:23:59,059 INFO L290 TraceCheckUtils]: 1: Hoare triple {1143#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,059 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1143#true} {1143#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,059 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:23:59,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,079 INFO L290 TraceCheckUtils]: 0: Hoare triple {1143#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {1168#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n))} is VALID [2022-04-27 22:23:59,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {1168#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,080 INFO L290 TraceCheckUtils]: 2: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,080 INFO L290 TraceCheckUtils]: 3: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,080 INFO L290 TraceCheckUtils]: 4: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,081 INFO L290 TraceCheckUtils]: 6: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,082 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {1169#(<= |correct_version_#in~n| 0)} {1148#(<= 1 main_~n~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1144#false} is VALID [2022-04-27 22:23:59,082 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 22:23:59,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,088 INFO L290 TraceCheckUtils]: 0: Hoare triple {1143#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {1143#true} is VALID [2022-04-27 22:23:59,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {1143#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {1143#true} is VALID [2022-04-27 22:23:59,088 INFO L290 TraceCheckUtils]: 2: Hoare triple {1143#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,088 INFO L290 TraceCheckUtils]: 3: Hoare triple {1143#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,088 INFO L290 TraceCheckUtils]: 4: Hoare triple {1143#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1143#true} is VALID [2022-04-27 22:23:59,088 INFO L290 TraceCheckUtils]: 5: Hoare triple {1143#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1143#true} is VALID [2022-04-27 22:23:59,089 INFO L290 TraceCheckUtils]: 6: Hoare triple {1143#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,089 INFO L290 TraceCheckUtils]: 7: Hoare triple {1143#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {1143#true} is VALID [2022-04-27 22:23:59,089 INFO L290 TraceCheckUtils]: 8: Hoare triple {1143#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,089 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1143#true} {1144#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1144#false} is VALID [2022-04-27 22:23:59,089 INFO L272 TraceCheckUtils]: 0: Hoare triple {1143#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1167#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:23:59,089 INFO L290 TraceCheckUtils]: 1: Hoare triple {1167#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1143#true} is VALID [2022-04-27 22:23:59,090 INFO L290 TraceCheckUtils]: 2: Hoare triple {1143#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,090 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1143#true} {1143#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,090 INFO L272 TraceCheckUtils]: 4: Hoare triple {1143#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,090 INFO L290 TraceCheckUtils]: 5: Hoare triple {1143#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {1143#true} is VALID [2022-04-27 22:23:59,090 INFO L290 TraceCheckUtils]: 6: Hoare triple {1143#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {1148#(<= 1 main_~n~0)} is VALID [2022-04-27 22:23:59,090 INFO L272 TraceCheckUtils]: 7: Hoare triple {1148#(<= 1 main_~n~0)} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1143#true} is VALID [2022-04-27 22:23:59,091 INFO L290 TraceCheckUtils]: 8: Hoare triple {1143#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {1168#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n))} is VALID [2022-04-27 22:23:59,091 INFO L290 TraceCheckUtils]: 9: Hoare triple {1168#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,091 INFO L290 TraceCheckUtils]: 10: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,092 INFO L290 TraceCheckUtils]: 11: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,092 INFO L290 TraceCheckUtils]: 12: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,092 INFO L290 TraceCheckUtils]: 13: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,093 INFO L290 TraceCheckUtils]: 14: Hoare triple {1169#(<= |correct_version_#in~n| 0)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1169#(<= |correct_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,093 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1169#(<= |correct_version_#in~n| 0)} {1148#(<= 1 main_~n~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1144#false} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 16: Hoare triple {1144#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {1144#false} is VALID [2022-04-27 22:23:59,094 INFO L272 TraceCheckUtils]: 17: Hoare triple {1144#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 18: Hoare triple {1143#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 19: Hoare triple {1143#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 20: Hoare triple {1143#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 21: Hoare triple {1143#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 22: Hoare triple {1143#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 23: Hoare triple {1143#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 24: Hoare triple {1143#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,094 INFO L290 TraceCheckUtils]: 25: Hoare triple {1143#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {1143#true} is VALID [2022-04-27 22:23:59,095 INFO L290 TraceCheckUtils]: 26: Hoare triple {1143#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1143#true} is VALID [2022-04-27 22:23:59,095 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {1143#true} {1144#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1144#false} is VALID [2022-04-27 22:23:59,095 INFO L290 TraceCheckUtils]: 28: Hoare triple {1144#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {1144#false} is VALID [2022-04-27 22:23:59,095 INFO L272 TraceCheckUtils]: 29: Hoare triple {1144#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {1144#false} is VALID [2022-04-27 22:23:59,095 INFO L290 TraceCheckUtils]: 30: Hoare triple {1144#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1144#false} is VALID [2022-04-27 22:23:59,095 INFO L290 TraceCheckUtils]: 31: Hoare triple {1144#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1144#false} is VALID [2022-04-27 22:23:59,095 INFO L290 TraceCheckUtils]: 32: Hoare triple {1144#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1144#false} is VALID [2022-04-27 22:23:59,095 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:23:59,095 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:23:59,096 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [375767185] [2022-04-27 22:23:59,096 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [375767185] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:23:59,096 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:23:59,096 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:23:59,096 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [523318554] [2022-04-27 22:23:59,096 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:23:59,096 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 33 [2022-04-27 22:23:59,096 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:23:59,097 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,115 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:59,115 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:23:59,115 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:23:59,115 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:23:59,115 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:23:59,116 INFO L87 Difference]: Start difference. First operand 50 states and 62 transitions. Second operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,296 INFO L93 Difference]: Finished difference Result 77 states and 93 transitions. [2022-04-27 22:23:59,296 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:23:59,297 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 33 [2022-04-27 22:23:59,297 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:23:59,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-27 22:23:59,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-27 22:23:59,299 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-27 22:23:59,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:59,341 INFO L225 Difference]: With dead ends: 77 [2022-04-27 22:23:59,341 INFO L226 Difference]: Without dead ends: 47 [2022-04-27 22:23:59,341 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-04-27 22:23:59,342 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 44 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 95 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 95 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:23:59,342 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [44 Valid, 50 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 95 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:23:59,342 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-27 22:23:59,353 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2022-04-27 22:23:59,353 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:23:59,354 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 47 states, 35 states have (on average 1.2857142857142858) internal successors, (45), 37 states have internal predecessors, (45), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,354 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 47 states, 35 states have (on average 1.2857142857142858) internal successors, (45), 37 states have internal predecessors, (45), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,354 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 47 states, 35 states have (on average 1.2857142857142858) internal successors, (45), 37 states have internal predecessors, (45), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,355 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,355 INFO L93 Difference]: Finished difference Result 47 states and 57 transitions. [2022-04-27 22:23:59,355 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 57 transitions. [2022-04-27 22:23:59,356 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:59,356 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:59,356 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 35 states have (on average 1.2857142857142858) internal successors, (45), 37 states have internal predecessors, (45), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 47 states. [2022-04-27 22:23:59,356 INFO L87 Difference]: Start difference. First operand has 47 states, 35 states have (on average 1.2857142857142858) internal successors, (45), 37 states have internal predecessors, (45), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 47 states. [2022-04-27 22:23:59,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,358 INFO L93 Difference]: Finished difference Result 47 states and 57 transitions. [2022-04-27 22:23:59,358 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 57 transitions. [2022-04-27 22:23:59,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:59,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:59,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:23:59,358 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:23:59,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 35 states have (on average 1.2857142857142858) internal successors, (45), 37 states have internal predecessors, (45), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 57 transitions. [2022-04-27 22:23:59,360 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 57 transitions. Word has length 33 [2022-04-27 22:23:59,360 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:23:59,360 INFO L495 AbstractCegarLoop]: Abstraction has 47 states and 57 transitions. [2022-04-27 22:23:59,360 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,360 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 57 transitions. [2022-04-27 22:23:59,360 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 22:23:59,361 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:23:59,361 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:23:59,361 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-04-27 22:23:59,361 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:23:59,361 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:23:59,361 INFO L85 PathProgramCache]: Analyzing trace with hash -934524560, now seen corresponding path program 1 times [2022-04-27 22:23:59,361 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:23:59,361 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [80604798] [2022-04-27 22:23:59,361 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:23:59,362 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:23:59,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,403 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:23:59,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,440 INFO L290 TraceCheckUtils]: 0: Hoare triple {1470#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1446#true} is VALID [2022-04-27 22:23:59,440 INFO L290 TraceCheckUtils]: 1: Hoare triple {1446#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,440 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1446#true} {1446#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,440 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:23:59,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,460 INFO L290 TraceCheckUtils]: 0: Hoare triple {1446#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:23:59,460 INFO L290 TraceCheckUtils]: 1: Hoare triple {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:23:59,461 INFO L290 TraceCheckUtils]: 2: Hoare triple {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:23:59,461 INFO L290 TraceCheckUtils]: 3: Hoare triple {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,462 INFO L290 TraceCheckUtils]: 4: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,462 INFO L290 TraceCheckUtils]: 5: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,462 INFO L290 TraceCheckUtils]: 6: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,462 INFO L290 TraceCheckUtils]: 7: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,463 INFO L290 TraceCheckUtils]: 8: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,464 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1472#(<= |correct_version_#in~m| 0)} {1451#(<= 1 main_~m~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1447#false} is VALID [2022-04-27 22:23:59,464 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-04-27 22:23:59,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,468 INFO L290 TraceCheckUtils]: 0: Hoare triple {1446#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {1446#true} is VALID [2022-04-27 22:23:59,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {1446#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {1446#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,468 INFO L290 TraceCheckUtils]: 3: Hoare triple {1446#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1446#true} is VALID [2022-04-27 22:23:59,468 INFO L290 TraceCheckUtils]: 4: Hoare triple {1446#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,468 INFO L290 TraceCheckUtils]: 5: Hoare triple {1446#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {1446#true} is VALID [2022-04-27 22:23:59,469 INFO L290 TraceCheckUtils]: 6: Hoare triple {1446#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,469 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {1446#true} {1447#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1447#false} is VALID [2022-04-27 22:23:59,469 INFO L272 TraceCheckUtils]: 0: Hoare triple {1446#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1470#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:23:59,469 INFO L290 TraceCheckUtils]: 1: Hoare triple {1470#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1446#true} is VALID [2022-04-27 22:23:59,469 INFO L290 TraceCheckUtils]: 2: Hoare triple {1446#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,469 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1446#true} {1446#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,470 INFO L272 TraceCheckUtils]: 4: Hoare triple {1446#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,470 INFO L290 TraceCheckUtils]: 5: Hoare triple {1446#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {1446#true} is VALID [2022-04-27 22:23:59,470 INFO L290 TraceCheckUtils]: 6: Hoare triple {1446#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {1451#(<= 1 main_~m~0)} is VALID [2022-04-27 22:23:59,470 INFO L272 TraceCheckUtils]: 7: Hoare triple {1451#(<= 1 main_~m~0)} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1446#true} is VALID [2022-04-27 22:23:59,471 INFO L290 TraceCheckUtils]: 8: Hoare triple {1446#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:23:59,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:23:59,471 INFO L290 TraceCheckUtils]: 10: Hoare triple {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:23:59,472 INFO L290 TraceCheckUtils]: 11: Hoare triple {1471#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,472 INFO L290 TraceCheckUtils]: 12: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,472 INFO L290 TraceCheckUtils]: 13: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,473 INFO L290 TraceCheckUtils]: 14: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,473 INFO L290 TraceCheckUtils]: 15: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,473 INFO L290 TraceCheckUtils]: 16: Hoare triple {1472#(<= |correct_version_#in~m| 0)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1472#(<= |correct_version_#in~m| 0)} is VALID [2022-04-27 22:23:59,474 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1472#(<= |correct_version_#in~m| 0)} {1451#(<= 1 main_~m~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1447#false} is VALID [2022-04-27 22:23:59,474 INFO L290 TraceCheckUtils]: 18: Hoare triple {1447#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {1447#false} is VALID [2022-04-27 22:23:59,474 INFO L272 TraceCheckUtils]: 19: Hoare triple {1447#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1446#true} is VALID [2022-04-27 22:23:59,474 INFO L290 TraceCheckUtils]: 20: Hoare triple {1446#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {1446#true} is VALID [2022-04-27 22:23:59,474 INFO L290 TraceCheckUtils]: 21: Hoare triple {1446#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,474 INFO L290 TraceCheckUtils]: 22: Hoare triple {1446#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 23: Hoare triple {1446#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1446#true} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 24: Hoare triple {1446#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 25: Hoare triple {1446#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {1446#true} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 26: Hoare triple {1446#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1446#true} is VALID [2022-04-27 22:23:59,475 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {1446#true} {1447#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1447#false} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 28: Hoare triple {1447#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {1447#false} is VALID [2022-04-27 22:23:59,475 INFO L272 TraceCheckUtils]: 29: Hoare triple {1447#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {1447#false} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 30: Hoare triple {1447#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1447#false} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 31: Hoare triple {1447#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1447#false} is VALID [2022-04-27 22:23:59,475 INFO L290 TraceCheckUtils]: 32: Hoare triple {1447#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1447#false} is VALID [2022-04-27 22:23:59,476 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:23:59,476 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:23:59,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [80604798] [2022-04-27 22:23:59,476 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [80604798] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:23:59,476 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:23:59,476 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:23:59,476 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [467110734] [2022-04-27 22:23:59,476 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:23:59,476 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 33 [2022-04-27 22:23:59,477 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:23:59,477 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,495 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:59,495 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:23:59,495 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:23:59,495 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:23:59,495 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:23:59,495 INFO L87 Difference]: Start difference. First operand 47 states and 57 transitions. Second operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,688 INFO L93 Difference]: Finished difference Result 83 states and 102 transitions. [2022-04-27 22:23:59,688 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:23:59,689 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 33 [2022-04-27 22:23:59,689 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:23:59,689 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 63 transitions. [2022-04-27 22:23:59,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 63 transitions. [2022-04-27 22:23:59,691 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 63 transitions. [2022-04-27 22:23:59,730 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-27 22:23:59,731 INFO L225 Difference]: With dead ends: 83 [2022-04-27 22:23:59,731 INFO L226 Difference]: Without dead ends: 48 [2022-04-27 22:23:59,731 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-04-27 22:23:59,732 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 41 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 93 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 93 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:23:59,732 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 50 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 93 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:23:59,732 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-27 22:23:59,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 48. [2022-04-27 22:23:59,745 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:23:59,745 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 48 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,745 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 48 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,745 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 48 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,747 INFO L93 Difference]: Finished difference Result 48 states and 58 transitions. [2022-04-27 22:23:59,747 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 58 transitions. [2022-04-27 22:23:59,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:59,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:59,747 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 48 states. [2022-04-27 22:23:59,747 INFO L87 Difference]: Start difference. First operand has 48 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 48 states. [2022-04-27 22:23:59,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:23:59,748 INFO L93 Difference]: Finished difference Result 48 states and 58 transitions. [2022-04-27 22:23:59,748 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 58 transitions. [2022-04-27 22:23:59,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:23:59,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:23:59,749 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:23:59,749 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:23:59,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:23:59,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 58 transitions. [2022-04-27 22:23:59,750 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 58 transitions. Word has length 33 [2022-04-27 22:23:59,750 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:23:59,750 INFO L495 AbstractCegarLoop]: Abstraction has 48 states and 58 transitions. [2022-04-27 22:23:59,750 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:23:59,750 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 58 transitions. [2022-04-27 22:23:59,751 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-27 22:23:59,751 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:23:59,751 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:23:59,751 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-04-27 22:23:59,751 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:23:59,751 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:23:59,751 INFO L85 PathProgramCache]: Analyzing trace with hash 183625953, now seen corresponding path program 1 times [2022-04-27 22:23:59,751 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:23:59,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1173772646] [2022-04-27 22:23:59,752 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:23:59,752 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:23:59,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,781 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:23:59,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,784 INFO L290 TraceCheckUtils]: 0: Hoare triple {1785#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1760#true} is VALID [2022-04-27 22:23:59,784 INFO L290 TraceCheckUtils]: 1: Hoare triple {1760#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,784 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1760#true} {1760#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,784 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:23:59,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,790 INFO L290 TraceCheckUtils]: 0: Hoare triple {1760#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {1760#true} is VALID [2022-04-27 22:23:59,790 INFO L290 TraceCheckUtils]: 1: Hoare triple {1760#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {1760#true} is VALID [2022-04-27 22:23:59,790 INFO L290 TraceCheckUtils]: 2: Hoare triple {1760#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,790 INFO L290 TraceCheckUtils]: 3: Hoare triple {1760#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {1760#true} is VALID [2022-04-27 22:23:59,791 INFO L290 TraceCheckUtils]: 4: Hoare triple {1760#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,791 INFO L290 TraceCheckUtils]: 5: Hoare triple {1760#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1760#true} is VALID [2022-04-27 22:23:59,791 INFO L290 TraceCheckUtils]: 6: Hoare triple {1760#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1760#true} is VALID [2022-04-27 22:23:59,791 INFO L290 TraceCheckUtils]: 7: Hoare triple {1760#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,791 INFO L290 TraceCheckUtils]: 8: Hoare triple {1760#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {1760#true} is VALID [2022-04-27 22:23:59,791 INFO L290 TraceCheckUtils]: 9: Hoare triple {1760#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,792 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1760#true} {1765#(<= 1 main_~n~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1765#(<= 1 main_~n~0)} is VALID [2022-04-27 22:23:59,792 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 22:23:59,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:23:59,809 INFO L290 TraceCheckUtils]: 0: Hoare triple {1760#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {1786#(and (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:23:59,809 INFO L290 TraceCheckUtils]: 1: Hoare triple {1786#(and (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,809 INFO L290 TraceCheckUtils]: 2: Hoare triple {1787#(<= |student_version_#in~n| 0)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,810 INFO L290 TraceCheckUtils]: 3: Hoare triple {1787#(<= |student_version_#in~n| 0)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,810 INFO L290 TraceCheckUtils]: 4: Hoare triple {1787#(<= |student_version_#in~n| 0)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,810 INFO L290 TraceCheckUtils]: 5: Hoare triple {1787#(<= |student_version_#in~n| 0)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,811 INFO L290 TraceCheckUtils]: 6: Hoare triple {1787#(<= |student_version_#in~n| 0)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,811 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {1787#(<= |student_version_#in~n| 0)} {1765#(<= 1 main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1761#false} is VALID [2022-04-27 22:23:59,812 INFO L272 TraceCheckUtils]: 0: Hoare triple {1760#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1785#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:23:59,812 INFO L290 TraceCheckUtils]: 1: Hoare triple {1785#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1760#true} is VALID [2022-04-27 22:23:59,812 INFO L290 TraceCheckUtils]: 2: Hoare triple {1760#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,812 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1760#true} {1760#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,812 INFO L272 TraceCheckUtils]: 4: Hoare triple {1760#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,812 INFO L290 TraceCheckUtils]: 5: Hoare triple {1760#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {1760#true} is VALID [2022-04-27 22:23:59,813 INFO L290 TraceCheckUtils]: 6: Hoare triple {1760#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {1765#(<= 1 main_~n~0)} is VALID [2022-04-27 22:23:59,813 INFO L272 TraceCheckUtils]: 7: Hoare triple {1765#(<= 1 main_~n~0)} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1760#true} is VALID [2022-04-27 22:23:59,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {1760#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {1760#true} is VALID [2022-04-27 22:23:59,813 INFO L290 TraceCheckUtils]: 9: Hoare triple {1760#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {1760#true} is VALID [2022-04-27 22:23:59,813 INFO L290 TraceCheckUtils]: 10: Hoare triple {1760#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,813 INFO L290 TraceCheckUtils]: 11: Hoare triple {1760#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {1760#true} is VALID [2022-04-27 22:23:59,813 INFO L290 TraceCheckUtils]: 12: Hoare triple {1760#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,813 INFO L290 TraceCheckUtils]: 13: Hoare triple {1760#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1760#true} is VALID [2022-04-27 22:23:59,814 INFO L290 TraceCheckUtils]: 14: Hoare triple {1760#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {1760#true} is VALID [2022-04-27 22:23:59,814 INFO L290 TraceCheckUtils]: 15: Hoare triple {1760#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,814 INFO L290 TraceCheckUtils]: 16: Hoare triple {1760#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {1760#true} is VALID [2022-04-27 22:23:59,814 INFO L290 TraceCheckUtils]: 17: Hoare triple {1760#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1760#true} is VALID [2022-04-27 22:23:59,815 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1760#true} {1765#(<= 1 main_~n~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {1765#(<= 1 main_~n~0)} is VALID [2022-04-27 22:23:59,815 INFO L290 TraceCheckUtils]: 19: Hoare triple {1765#(<= 1 main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {1765#(<= 1 main_~n~0)} is VALID [2022-04-27 22:23:59,815 INFO L272 TraceCheckUtils]: 20: Hoare triple {1765#(<= 1 main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1760#true} is VALID [2022-04-27 22:23:59,815 INFO L290 TraceCheckUtils]: 21: Hoare triple {1760#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {1786#(and (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:23:59,816 INFO L290 TraceCheckUtils]: 22: Hoare triple {1786#(and (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,816 INFO L290 TraceCheckUtils]: 23: Hoare triple {1787#(<= |student_version_#in~n| 0)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,816 INFO L290 TraceCheckUtils]: 24: Hoare triple {1787#(<= |student_version_#in~n| 0)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,817 INFO L290 TraceCheckUtils]: 25: Hoare triple {1787#(<= |student_version_#in~n| 0)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,817 INFO L290 TraceCheckUtils]: 26: Hoare triple {1787#(<= |student_version_#in~n| 0)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,817 INFO L290 TraceCheckUtils]: 27: Hoare triple {1787#(<= |student_version_#in~n| 0)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1787#(<= |student_version_#in~n| 0)} is VALID [2022-04-27 22:23:59,818 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1787#(<= |student_version_#in~n| 0)} {1765#(<= 1 main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {1761#false} is VALID [2022-04-27 22:23:59,818 INFO L290 TraceCheckUtils]: 29: Hoare triple {1761#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {1761#false} is VALID [2022-04-27 22:23:59,818 INFO L272 TraceCheckUtils]: 30: Hoare triple {1761#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {1761#false} is VALID [2022-04-27 22:23:59,818 INFO L290 TraceCheckUtils]: 31: Hoare triple {1761#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1761#false} is VALID [2022-04-27 22:23:59,818 INFO L290 TraceCheckUtils]: 32: Hoare triple {1761#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1761#false} is VALID [2022-04-27 22:23:59,818 INFO L290 TraceCheckUtils]: 33: Hoare triple {1761#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1761#false} is VALID [2022-04-27 22:23:59,818 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-04-27 22:23:59,819 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:23:59,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1173772646] [2022-04-27 22:23:59,819 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1173772646] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:23:59,819 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:23:59,819 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:23:59,819 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1853833633] [2022-04-27 22:23:59,819 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:23:59,819 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 34 [2022-04-27 22:23:59,819 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:23:59,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:23:59,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:23:59,838 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:23:59,838 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:23:59,838 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:23:59,838 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:23:59,838 INFO L87 Difference]: Start difference. First operand 48 states and 58 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,024 INFO L93 Difference]: Finished difference Result 57 states and 66 transitions. [2022-04-27 22:24:00,024 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:24:00,024 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 34 [2022-04-27 22:24:00,025 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:00,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-27 22:24:00,027 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-27 22:24:00,029 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 51 transitions. [2022-04-27 22:24:00,062 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-27 22:24:00,064 INFO L225 Difference]: With dead ends: 57 [2022-04-27 22:24:00,064 INFO L226 Difference]: Without dead ends: 45 [2022-04-27 22:24:00,064 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-04-27 22:24:00,065 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 43 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 95 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 103 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 95 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:00,065 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [43 Valid, 50 Invalid, 103 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 95 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:24:00,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-27 22:24:00,084 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 45. [2022-04-27 22:24:00,084 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:00,084 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 45 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:00,086 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 45 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:00,086 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 45 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:00,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,087 INFO L93 Difference]: Finished difference Result 45 states and 53 transitions. [2022-04-27 22:24:00,087 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 53 transitions. [2022-04-27 22:24:00,087 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:00,087 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:00,087 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 45 states. [2022-04-27 22:24:00,087 INFO L87 Difference]: Start difference. First operand has 45 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 45 states. [2022-04-27 22:24:00,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,089 INFO L93 Difference]: Finished difference Result 45 states and 53 transitions. [2022-04-27 22:24:00,089 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 53 transitions. [2022-04-27 22:24:00,089 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:00,089 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:00,089 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:00,089 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:00,089 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:00,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 53 transitions. [2022-04-27 22:24:00,090 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 53 transitions. Word has length 34 [2022-04-27 22:24:00,091 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:00,091 INFO L495 AbstractCegarLoop]: Abstraction has 45 states and 53 transitions. [2022-04-27 22:24:00,091 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,091 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 53 transitions. [2022-04-27 22:24:00,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-27 22:24:00,092 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:00,092 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:24:00,092 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-04-27 22:24:00,092 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:00,093 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:00,093 INFO L85 PathProgramCache]: Analyzing trace with hash 1980049385, now seen corresponding path program 1 times [2022-04-27 22:24:00,093 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:00,093 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1901140650] [2022-04-27 22:24:00,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:00,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:00,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,131 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:00,132 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,134 INFO L290 TraceCheckUtils]: 0: Hoare triple {2054#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2029#true} is VALID [2022-04-27 22:24:00,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {2029#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,135 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2029#true} {2029#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,135 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:00,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,158 INFO L290 TraceCheckUtils]: 0: Hoare triple {2029#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2055#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,159 INFO L290 TraceCheckUtils]: 1: Hoare triple {2055#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,159 INFO L290 TraceCheckUtils]: 2: Hoare triple {2056#(<= 1 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,160 INFO L290 TraceCheckUtils]: 3: Hoare triple {2056#(<= 1 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,160 INFO L290 TraceCheckUtils]: 4: Hoare triple {2056#(<= 1 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,160 INFO L290 TraceCheckUtils]: 5: Hoare triple {2056#(<= 1 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2057#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:24:00,161 INFO L290 TraceCheckUtils]: 6: Hoare triple {2057#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2030#false} is VALID [2022-04-27 22:24:00,161 INFO L290 TraceCheckUtils]: 7: Hoare triple {2030#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2030#false} is VALID [2022-04-27 22:24:00,161 INFO L290 TraceCheckUtils]: 8: Hoare triple {2030#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2030#false} is VALID [2022-04-27 22:24:00,161 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2030#false} {2029#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2030#false} is VALID [2022-04-27 22:24:00,161 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-04-27 22:24:00,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,170 INFO L290 TraceCheckUtils]: 0: Hoare triple {2029#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2029#true} is VALID [2022-04-27 22:24:00,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {2029#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2029#true} is VALID [2022-04-27 22:24:00,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {2029#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,170 INFO L290 TraceCheckUtils]: 3: Hoare triple {2029#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,171 INFO L290 TraceCheckUtils]: 4: Hoare triple {2029#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2029#true} is VALID [2022-04-27 22:24:00,171 INFO L290 TraceCheckUtils]: 5: Hoare triple {2029#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2029#true} is VALID [2022-04-27 22:24:00,171 INFO L290 TraceCheckUtils]: 6: Hoare triple {2029#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,171 INFO L290 TraceCheckUtils]: 7: Hoare triple {2029#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2029#true} is VALID [2022-04-27 22:24:00,171 INFO L290 TraceCheckUtils]: 8: Hoare triple {2029#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,171 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2029#true} {2030#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2030#false} is VALID [2022-04-27 22:24:00,172 INFO L272 TraceCheckUtils]: 0: Hoare triple {2029#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2054#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:00,172 INFO L290 TraceCheckUtils]: 1: Hoare triple {2054#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2029#true} is VALID [2022-04-27 22:24:00,172 INFO L290 TraceCheckUtils]: 2: Hoare triple {2029#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,172 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2029#true} {2029#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,172 INFO L272 TraceCheckUtils]: 4: Hoare triple {2029#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,172 INFO L290 TraceCheckUtils]: 5: Hoare triple {2029#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {2029#true} is VALID [2022-04-27 22:24:00,172 INFO L290 TraceCheckUtils]: 6: Hoare triple {2029#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,172 INFO L272 TraceCheckUtils]: 7: Hoare triple {2029#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2029#true} is VALID [2022-04-27 22:24:00,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {2029#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2055#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {2055#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,173 INFO L290 TraceCheckUtils]: 10: Hoare triple {2056#(<= 1 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,174 INFO L290 TraceCheckUtils]: 11: Hoare triple {2056#(<= 1 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,174 INFO L290 TraceCheckUtils]: 12: Hoare triple {2056#(<= 1 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2056#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:00,174 INFO L290 TraceCheckUtils]: 13: Hoare triple {2056#(<= 1 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2057#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:24:00,175 INFO L290 TraceCheckUtils]: 14: Hoare triple {2057#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2030#false} is VALID [2022-04-27 22:24:00,175 INFO L290 TraceCheckUtils]: 15: Hoare triple {2030#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2030#false} is VALID [2022-04-27 22:24:00,175 INFO L290 TraceCheckUtils]: 16: Hoare triple {2030#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2030#false} is VALID [2022-04-27 22:24:00,175 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2030#false} {2029#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2030#false} is VALID [2022-04-27 22:24:00,175 INFO L290 TraceCheckUtils]: 18: Hoare triple {2030#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {2030#false} is VALID [2022-04-27 22:24:00,175 INFO L272 TraceCheckUtils]: 19: Hoare triple {2030#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2029#true} is VALID [2022-04-27 22:24:00,175 INFO L290 TraceCheckUtils]: 20: Hoare triple {2029#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2029#true} is VALID [2022-04-27 22:24:00,175 INFO L290 TraceCheckUtils]: 21: Hoare triple {2029#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2029#true} is VALID [2022-04-27 22:24:00,175 INFO L290 TraceCheckUtils]: 22: Hoare triple {2029#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 23: Hoare triple {2029#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 24: Hoare triple {2029#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2029#true} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 25: Hoare triple {2029#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2029#true} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 26: Hoare triple {2029#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 27: Hoare triple {2029#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2029#true} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 28: Hoare triple {2029#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2029#true} is VALID [2022-04-27 22:24:00,176 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {2029#true} {2030#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2030#false} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {2030#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {2030#false} is VALID [2022-04-27 22:24:00,176 INFO L272 TraceCheckUtils]: 31: Hoare triple {2030#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {2030#false} is VALID [2022-04-27 22:24:00,176 INFO L290 TraceCheckUtils]: 32: Hoare triple {2030#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2030#false} is VALID [2022-04-27 22:24:00,177 INFO L290 TraceCheckUtils]: 33: Hoare triple {2030#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2030#false} is VALID [2022-04-27 22:24:00,177 INFO L290 TraceCheckUtils]: 34: Hoare triple {2030#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2030#false} is VALID [2022-04-27 22:24:00,177 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-04-27 22:24:00,177 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:00,177 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1901140650] [2022-04-27 22:24:00,177 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1901140650] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:24:00,177 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:24:00,177 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:24:00,177 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1029719462] [2022-04-27 22:24:00,177 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:24:00,178 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.5) internal successors, (27), 5 states have internal predecessors, (27), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-27 22:24:00,178 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:00,178 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.5) internal successors, (27), 5 states have internal predecessors, (27), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,197 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-27 22:24:00,198 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:24:00,198 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:00,198 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:24:00,198 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:24:00,198 INFO L87 Difference]: Start difference. First operand 45 states and 53 transitions. Second operand has 6 states, 6 states have (on average 4.5) internal successors, (27), 5 states have internal predecessors, (27), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,337 INFO L93 Difference]: Finished difference Result 64 states and 73 transitions. [2022-04-27 22:24:00,338 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:24:00,338 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.5) internal successors, (27), 5 states have internal predecessors, (27), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-27 22:24:00,338 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:00,338 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.5) internal successors, (27), 5 states have internal predecessors, (27), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 61 transitions. [2022-04-27 22:24:00,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.5) internal successors, (27), 5 states have internal predecessors, (27), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 61 transitions. [2022-04-27 22:24:00,340 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 61 transitions. [2022-04-27 22:24:00,380 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:00,381 INFO L225 Difference]: With dead ends: 64 [2022-04-27 22:24:00,381 INFO L226 Difference]: Without dead ends: 40 [2022-04-27 22:24:00,381 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2022-04-27 22:24:00,381 INFO L413 NwaCegarLoop]: 32 mSDtfsCounter, 39 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:00,381 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 44 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 22:24:00,382 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-27 22:24:00,393 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 36. [2022-04-27 22:24:00,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:00,393 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 36 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 states have internal predecessors, (33), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,393 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 36 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 states have internal predecessors, (33), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,393 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 36 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 states have internal predecessors, (33), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,394 INFO L93 Difference]: Finished difference Result 40 states and 46 transitions. [2022-04-27 22:24:00,394 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 46 transitions. [2022-04-27 22:24:00,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:00,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:00,394 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 states have internal predecessors, (33), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 40 states. [2022-04-27 22:24:00,395 INFO L87 Difference]: Start difference. First operand has 36 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 states have internal predecessors, (33), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 40 states. [2022-04-27 22:24:00,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,396 INFO L93 Difference]: Finished difference Result 40 states and 46 transitions. [2022-04-27 22:24:00,396 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 46 transitions. [2022-04-27 22:24:00,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:00,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:00,396 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:00,396 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:00,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 27 states have (on average 1.2222222222222223) internal successors, (33), 27 states have internal predecessors, (33), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 41 transitions. [2022-04-27 22:24:00,397 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 41 transitions. Word has length 35 [2022-04-27 22:24:00,397 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:00,397 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 41 transitions. [2022-04-27 22:24:00,397 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.5) internal successors, (27), 5 states have internal predecessors, (27), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,397 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-27 22:24:00,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-27 22:24:00,397 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:00,397 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:24:00,398 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-04-27 22:24:00,398 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:00,398 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:00,398 INFO L85 PathProgramCache]: Analyzing trace with hash 1683932512, now seen corresponding path program 1 times [2022-04-27 22:24:00,398 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:00,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [981247621] [2022-04-27 22:24:00,398 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:00,398 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:00,419 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,473 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:00,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,476 INFO L290 TraceCheckUtils]: 0: Hoare triple {2315#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2289#true} is VALID [2022-04-27 22:24:00,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {2289#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,476 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2289#true} {2289#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,477 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:00,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,481 INFO L290 TraceCheckUtils]: 0: Hoare triple {2289#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 1: Hoare triple {2289#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 2: Hoare triple {2289#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 3: Hoare triple {2289#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 4: Hoare triple {2289#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 5: Hoare triple {2289#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 6: Hoare triple {2289#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 7: Hoare triple {2289#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 8: Hoare triple {2289#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2289#true} is VALID [2022-04-27 22:24:00,482 INFO L290 TraceCheckUtils]: 9: Hoare triple {2289#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,485 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2289#true} {2294#(<= 1 main_~m~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2294#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,485 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 22:24:00,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,511 INFO L290 TraceCheckUtils]: 0: Hoare triple {2289#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2316#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:24:00,512 INFO L290 TraceCheckUtils]: 1: Hoare triple {2316#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2317#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:00,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {2317#(<= 1 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2317#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:00,512 INFO L290 TraceCheckUtils]: 3: Hoare triple {2317#(<= 1 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2317#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:00,513 INFO L290 TraceCheckUtils]: 4: Hoare triple {2317#(<= 1 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2318#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:24:00,513 INFO L290 TraceCheckUtils]: 5: Hoare triple {2318#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2290#false} is VALID [2022-04-27 22:24:00,513 INFO L290 TraceCheckUtils]: 6: Hoare triple {2290#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2290#false} is VALID [2022-04-27 22:24:00,513 INFO L290 TraceCheckUtils]: 7: Hoare triple {2290#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2290#false} is VALID [2022-04-27 22:24:00,513 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {2290#false} {2294#(<= 1 main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2290#false} is VALID [2022-04-27 22:24:00,514 INFO L272 TraceCheckUtils]: 0: Hoare triple {2289#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2315#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:00,514 INFO L290 TraceCheckUtils]: 1: Hoare triple {2315#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2289#true} is VALID [2022-04-27 22:24:00,514 INFO L290 TraceCheckUtils]: 2: Hoare triple {2289#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,514 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2289#true} {2289#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,514 INFO L272 TraceCheckUtils]: 4: Hoare triple {2289#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,514 INFO L290 TraceCheckUtils]: 5: Hoare triple {2289#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {2289#true} is VALID [2022-04-27 22:24:00,515 INFO L290 TraceCheckUtils]: 6: Hoare triple {2289#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {2294#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,515 INFO L272 TraceCheckUtils]: 7: Hoare triple {2294#(<= 1 main_~m~0)} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2289#true} is VALID [2022-04-27 22:24:00,515 INFO L290 TraceCheckUtils]: 8: Hoare triple {2289#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2289#true} is VALID [2022-04-27 22:24:00,515 INFO L290 TraceCheckUtils]: 9: Hoare triple {2289#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2289#true} is VALID [2022-04-27 22:24:00,515 INFO L290 TraceCheckUtils]: 10: Hoare triple {2289#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,515 INFO L290 TraceCheckUtils]: 11: Hoare triple {2289#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2289#true} is VALID [2022-04-27 22:24:00,515 INFO L290 TraceCheckUtils]: 12: Hoare triple {2289#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,516 INFO L290 TraceCheckUtils]: 13: Hoare triple {2289#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2289#true} is VALID [2022-04-27 22:24:00,516 INFO L290 TraceCheckUtils]: 14: Hoare triple {2289#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2289#true} is VALID [2022-04-27 22:24:00,516 INFO L290 TraceCheckUtils]: 15: Hoare triple {2289#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,516 INFO L290 TraceCheckUtils]: 16: Hoare triple {2289#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2289#true} is VALID [2022-04-27 22:24:00,516 INFO L290 TraceCheckUtils]: 17: Hoare triple {2289#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2289#true} is VALID [2022-04-27 22:24:00,516 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2289#true} {2294#(<= 1 main_~m~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2294#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,517 INFO L290 TraceCheckUtils]: 19: Hoare triple {2294#(<= 1 main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {2294#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,517 INFO L272 TraceCheckUtils]: 20: Hoare triple {2294#(<= 1 main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2289#true} is VALID [2022-04-27 22:24:00,517 INFO L290 TraceCheckUtils]: 21: Hoare triple {2289#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2316#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:24:00,518 INFO L290 TraceCheckUtils]: 22: Hoare triple {2316#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2317#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:00,518 INFO L290 TraceCheckUtils]: 23: Hoare triple {2317#(<= 1 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2317#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:00,518 INFO L290 TraceCheckUtils]: 24: Hoare triple {2317#(<= 1 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2317#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:00,519 INFO L290 TraceCheckUtils]: 25: Hoare triple {2317#(<= 1 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2318#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:24:00,519 INFO L290 TraceCheckUtils]: 26: Hoare triple {2318#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2290#false} is VALID [2022-04-27 22:24:00,519 INFO L290 TraceCheckUtils]: 27: Hoare triple {2290#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2290#false} is VALID [2022-04-27 22:24:00,519 INFO L290 TraceCheckUtils]: 28: Hoare triple {2290#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2290#false} is VALID [2022-04-27 22:24:00,519 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {2290#false} {2294#(<= 1 main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2290#false} is VALID [2022-04-27 22:24:00,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {2290#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {2290#false} is VALID [2022-04-27 22:24:00,519 INFO L272 TraceCheckUtils]: 31: Hoare triple {2290#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {2290#false} is VALID [2022-04-27 22:24:00,520 INFO L290 TraceCheckUtils]: 32: Hoare triple {2290#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2290#false} is VALID [2022-04-27 22:24:00,520 INFO L290 TraceCheckUtils]: 33: Hoare triple {2290#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2290#false} is VALID [2022-04-27 22:24:00,520 INFO L290 TraceCheckUtils]: 34: Hoare triple {2290#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2290#false} is VALID [2022-04-27 22:24:00,520 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-04-27 22:24:00,520 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:00,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [981247621] [2022-04-27 22:24:00,520 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [981247621] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:24:00,520 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:24:00,520 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-27 22:24:00,520 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [940205501] [2022-04-27 22:24:00,520 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:24:00,521 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-27 22:24:00,521 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:00,521 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,537 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-27 22:24:00,538 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 22:24:00,538 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:00,538 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 22:24:00,538 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-27 22:24:00,538 INFO L87 Difference]: Start difference. First operand 36 states and 41 transitions. Second operand has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,765 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-04-27 22:24:00,765 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 22:24:00,765 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-27 22:24:00,765 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:00,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 48 transitions. [2022-04-27 22:24:00,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 48 transitions. [2022-04-27 22:24:00,767 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 48 transitions. [2022-04-27 22:24:00,802 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-27 22:24:00,802 INFO L225 Difference]: With dead ends: 46 [2022-04-27 22:24:00,802 INFO L226 Difference]: Without dead ends: 37 [2022-04-27 22:24:00,803 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=76, Unknown=0, NotChecked=0, Total=110 [2022-04-27 22:24:00,803 INFO L413 NwaCegarLoop]: 32 mSDtfsCounter, 35 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 54 SdHoareTripleChecker+Invalid, 123 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:00,803 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 54 Invalid, 123 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:24:00,804 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-27 22:24:00,821 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-27 22:24:00,821 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:00,822 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,822 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,822 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,823 INFO L93 Difference]: Finished difference Result 37 states and 42 transitions. [2022-04-27 22:24:00,823 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 42 transitions. [2022-04-27 22:24:00,823 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:00,823 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:00,823 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 37 states. [2022-04-27 22:24:00,823 INFO L87 Difference]: Start difference. First operand has 37 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 37 states. [2022-04-27 22:24:00,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:00,824 INFO L93 Difference]: Finished difference Result 37 states and 42 transitions. [2022-04-27 22:24:00,824 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 42 transitions. [2022-04-27 22:24:00,824 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:00,824 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:00,824 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:00,824 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:00,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:00,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 42 transitions. [2022-04-27 22:24:00,825 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 42 transitions. Word has length 35 [2022-04-27 22:24:00,825 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:00,825 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 42 transitions. [2022-04-27 22:24:00,825 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.857142857142857) internal successors, (27), 6 states have internal predecessors, (27), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,826 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 42 transitions. [2022-04-27 22:24:00,826 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 22:24:00,826 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:00,826 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:24:00,826 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-04-27 22:24:00,826 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:00,826 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:00,826 INFO L85 PathProgramCache]: Analyzing trace with hash 577653245, now seen corresponding path program 1 times [2022-04-27 22:24:00,826 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:00,827 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1940186445] [2022-04-27 22:24:00,827 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:00,827 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:00,842 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,855 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:00,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,858 INFO L290 TraceCheckUtils]: 0: Hoare triple {2551#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2524#true} is VALID [2022-04-27 22:24:00,858 INFO L290 TraceCheckUtils]: 1: Hoare triple {2524#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,858 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2524#true} {2524#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,858 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:00,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,863 INFO L290 TraceCheckUtils]: 0: Hoare triple {2524#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2524#true} is VALID [2022-04-27 22:24:00,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {2524#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {2524#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 3: Hoare triple {2524#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 4: Hoare triple {2524#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {2524#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 6: Hoare triple {2524#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {2524#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {2524#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2524#true} is VALID [2022-04-27 22:24:00,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {2524#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,865 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2524#true} {2529#(<= 1 main_~m~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2529#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,865 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 22:24:00,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:00,882 INFO L290 TraceCheckUtils]: 0: Hoare triple {2524#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:00,883 INFO L290 TraceCheckUtils]: 1: Hoare triple {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:00,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:00,884 INFO L290 TraceCheckUtils]: 3: Hoare triple {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,884 INFO L290 TraceCheckUtils]: 4: Hoare triple {2553#(<= |student_version_#in~m| 0)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,884 INFO L290 TraceCheckUtils]: 5: Hoare triple {2553#(<= |student_version_#in~m| 0)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,884 INFO L290 TraceCheckUtils]: 6: Hoare triple {2553#(<= |student_version_#in~m| 0)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,885 INFO L290 TraceCheckUtils]: 7: Hoare triple {2553#(<= |student_version_#in~m| 0)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,885 INFO L290 TraceCheckUtils]: 8: Hoare triple {2553#(<= |student_version_#in~m| 0)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,886 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {2553#(<= |student_version_#in~m| 0)} {2529#(<= 1 main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2525#false} is VALID [2022-04-27 22:24:00,886 INFO L272 TraceCheckUtils]: 0: Hoare triple {2524#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2551#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:00,886 INFO L290 TraceCheckUtils]: 1: Hoare triple {2551#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2524#true} is VALID [2022-04-27 22:24:00,886 INFO L290 TraceCheckUtils]: 2: Hoare triple {2524#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2524#true} {2524#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L272 TraceCheckUtils]: 4: Hoare triple {2524#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L290 TraceCheckUtils]: 5: Hoare triple {2524#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L290 TraceCheckUtils]: 6: Hoare triple {2524#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {2529#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,887 INFO L272 TraceCheckUtils]: 7: Hoare triple {2529#(<= 1 main_~m~0)} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L290 TraceCheckUtils]: 8: Hoare triple {2524#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L290 TraceCheckUtils]: 9: Hoare triple {2524#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L290 TraceCheckUtils]: 10: Hoare triple {2524#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,887 INFO L290 TraceCheckUtils]: 11: Hoare triple {2524#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2524#true} is VALID [2022-04-27 22:24:00,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {2524#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,888 INFO L290 TraceCheckUtils]: 13: Hoare triple {2524#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2524#true} is VALID [2022-04-27 22:24:00,888 INFO L290 TraceCheckUtils]: 14: Hoare triple {2524#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2524#true} is VALID [2022-04-27 22:24:00,888 INFO L290 TraceCheckUtils]: 15: Hoare triple {2524#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,888 INFO L290 TraceCheckUtils]: 16: Hoare triple {2524#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2524#true} is VALID [2022-04-27 22:24:00,888 INFO L290 TraceCheckUtils]: 17: Hoare triple {2524#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2524#true} is VALID [2022-04-27 22:24:00,889 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2524#true} {2529#(<= 1 main_~m~0)} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2529#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,889 INFO L290 TraceCheckUtils]: 19: Hoare triple {2529#(<= 1 main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {2529#(<= 1 main_~m~0)} is VALID [2022-04-27 22:24:00,889 INFO L272 TraceCheckUtils]: 20: Hoare triple {2529#(<= 1 main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2524#true} is VALID [2022-04-27 22:24:00,889 INFO L290 TraceCheckUtils]: 21: Hoare triple {2524#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:00,890 INFO L290 TraceCheckUtils]: 22: Hoare triple {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:00,890 INFO L290 TraceCheckUtils]: 23: Hoare triple {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:00,890 INFO L290 TraceCheckUtils]: 24: Hoare triple {2552#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,891 INFO L290 TraceCheckUtils]: 25: Hoare triple {2553#(<= |student_version_#in~m| 0)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,891 INFO L290 TraceCheckUtils]: 26: Hoare triple {2553#(<= |student_version_#in~m| 0)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,891 INFO L290 TraceCheckUtils]: 27: Hoare triple {2553#(<= |student_version_#in~m| 0)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,892 INFO L290 TraceCheckUtils]: 28: Hoare triple {2553#(<= |student_version_#in~m| 0)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,892 INFO L290 TraceCheckUtils]: 29: Hoare triple {2553#(<= |student_version_#in~m| 0)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2553#(<= |student_version_#in~m| 0)} is VALID [2022-04-27 22:24:00,893 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {2553#(<= |student_version_#in~m| 0)} {2529#(<= 1 main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2525#false} is VALID [2022-04-27 22:24:00,893 INFO L290 TraceCheckUtils]: 31: Hoare triple {2525#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {2525#false} is VALID [2022-04-27 22:24:00,893 INFO L272 TraceCheckUtils]: 32: Hoare triple {2525#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {2525#false} is VALID [2022-04-27 22:24:00,893 INFO L290 TraceCheckUtils]: 33: Hoare triple {2525#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2525#false} is VALID [2022-04-27 22:24:00,893 INFO L290 TraceCheckUtils]: 34: Hoare triple {2525#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2525#false} is VALID [2022-04-27 22:24:00,893 INFO L290 TraceCheckUtils]: 35: Hoare triple {2525#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2525#false} is VALID [2022-04-27 22:24:00,893 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-27 22:24:00,893 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:00,893 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1940186445] [2022-04-27 22:24:00,894 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1940186445] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 22:24:00,894 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 22:24:00,894 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 22:24:00,894 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [998247942] [2022-04-27 22:24:00,894 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 22:24:00,894 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-27 22:24:00,894 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:00,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:00,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:00,917 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 22:24:00,917 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:00,917 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 22:24:00,918 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 22:24:00,918 INFO L87 Difference]: Start difference. First operand 37 states and 42 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:01,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:01,109 INFO L93 Difference]: Finished difference Result 50 states and 56 transitions. [2022-04-27 22:24:01,109 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 22:24:01,109 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-27 22:24:01,110 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:01,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:01,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 50 transitions. [2022-04-27 22:24:01,111 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:01,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 50 transitions. [2022-04-27 22:24:01,111 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 50 transitions. [2022-04-27 22:24:01,151 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:01,151 INFO L225 Difference]: With dead ends: 50 [2022-04-27 22:24:01,151 INFO L226 Difference]: Without dead ends: 38 [2022-04-27 22:24:01,152 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-04-27 22:24:01,152 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 40 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 93 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 93 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:01,152 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [40 Valid, 50 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 93 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:24:01,152 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-27 22:24:01,169 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-04-27 22:24:01,169 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:01,169 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 38 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:01,170 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 38 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:01,170 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 38 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:01,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:01,170 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-27 22:24:01,170 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-27 22:24:01,171 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:01,171 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:01,171 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 38 states. [2022-04-27 22:24:01,171 INFO L87 Difference]: Start difference. First operand has 38 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 38 states. [2022-04-27 22:24:01,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:01,171 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-27 22:24:01,171 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-27 22:24:01,172 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:01,172 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:01,172 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:01,172 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:01,172 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 29 states have (on average 1.206896551724138) internal successors, (35), 29 states have internal predecessors, (35), 5 states have call successors, (5), 5 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 22:24:01,172 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 43 transitions. [2022-04-27 22:24:01,172 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 43 transitions. Word has length 36 [2022-04-27 22:24:01,173 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:01,173 INFO L495 AbstractCegarLoop]: Abstraction has 38 states and 43 transitions. [2022-04-27 22:24:01,173 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:01,173 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-27 22:24:01,173 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-27 22:24:01,173 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:01,173 INFO L195 NwaCegarLoop]: trace histogram [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, 1] [2022-04-27 22:24:01,173 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-04-27 22:24:01,173 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:01,174 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:01,174 INFO L85 PathProgramCache]: Analyzing trace with hash -1698211422, now seen corresponding path program 1 times [2022-04-27 22:24:01,174 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:01,174 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [658046393] [2022-04-27 22:24:01,174 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:01,174 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:01,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:01,255 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:01,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:01,259 INFO L290 TraceCheckUtils]: 0: Hoare triple {2799#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2766#true} is VALID [2022-04-27 22:24:01,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {2766#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:01,259 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2766#true} {2766#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:01,259 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:01,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:01,337 INFO L290 TraceCheckUtils]: 0: Hoare triple {2766#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:01,339 INFO L290 TraceCheckUtils]: 1: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:01,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:01,340 INFO L290 TraceCheckUtils]: 3: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:01,340 INFO L290 TraceCheckUtils]: 4: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:01,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2802#(and (<= 1 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 1))} is VALID [2022-04-27 22:24:01,341 INFO L290 TraceCheckUtils]: 6: Hoare triple {2802#(and (<= 1 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:01,342 INFO L290 TraceCheckUtils]: 7: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:01,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:01,343 INFO L290 TraceCheckUtils]: 9: Hoare triple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:01,344 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} {2766#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2782#(and (<= |main_#t~ret8| 1) (<= 1 |main_#t~ret8|))} is VALID [2022-04-27 22:24:01,344 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 22:24:01,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:01,451 INFO L290 TraceCheckUtils]: 0: Hoare triple {2766#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:01,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:01,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:01,453 INFO L290 TraceCheckUtils]: 3: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:01,454 INFO L290 TraceCheckUtils]: 4: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:01,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2807#(and (<= 1 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 1))} is VALID [2022-04-27 22:24:01,455 INFO L290 TraceCheckUtils]: 6: Hoare triple {2807#(and (<= 1 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:01,455 INFO L290 TraceCheckUtils]: 7: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:01,456 INFO L290 TraceCheckUtils]: 8: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:01,456 INFO L290 TraceCheckUtils]: 9: Hoare triple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:01,457 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2795#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:01,458 INFO L272 TraceCheckUtils]: 0: Hoare triple {2766#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2799#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:01,458 INFO L290 TraceCheckUtils]: 1: Hoare triple {2799#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2766#true} is VALID [2022-04-27 22:24:01,458 INFO L290 TraceCheckUtils]: 2: Hoare triple {2766#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:01,458 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2766#true} {2766#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:01,458 INFO L272 TraceCheckUtils]: 4: Hoare triple {2766#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:01,458 INFO L290 TraceCheckUtils]: 5: Hoare triple {2766#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:01,458 INFO L290 TraceCheckUtils]: 6: Hoare triple {2766#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:01,458 INFO L272 TraceCheckUtils]: 7: Hoare triple {2766#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:01,459 INFO L290 TraceCheckUtils]: 8: Hoare triple {2766#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:01,459 INFO L290 TraceCheckUtils]: 9: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:01,459 INFO L290 TraceCheckUtils]: 10: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:01,460 INFO L290 TraceCheckUtils]: 11: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:01,460 INFO L290 TraceCheckUtils]: 12: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:01,461 INFO L290 TraceCheckUtils]: 13: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2802#(and (<= 1 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 1))} is VALID [2022-04-27 22:24:01,461 INFO L290 TraceCheckUtils]: 14: Hoare triple {2802#(and (<= 1 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:01,462 INFO L290 TraceCheckUtils]: 15: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:01,462 INFO L290 TraceCheckUtils]: 16: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:01,462 INFO L290 TraceCheckUtils]: 17: Hoare triple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:01,463 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} {2766#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2782#(and (<= |main_#t~ret8| 1) (<= 1 |main_#t~ret8|))} is VALID [2022-04-27 22:24:01,464 INFO L290 TraceCheckUtils]: 19: Hoare triple {2782#(and (<= |main_#t~ret8| 1) (<= 1 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} is VALID [2022-04-27 22:24:01,464 INFO L272 TraceCheckUtils]: 20: Hoare triple {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:01,464 INFO L290 TraceCheckUtils]: 21: Hoare triple {2766#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:01,464 INFO L290 TraceCheckUtils]: 22: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:01,465 INFO L290 TraceCheckUtils]: 23: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:01,465 INFO L290 TraceCheckUtils]: 24: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:01,466 INFO L290 TraceCheckUtils]: 25: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:01,466 INFO L290 TraceCheckUtils]: 26: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2807#(and (<= 1 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 1))} is VALID [2022-04-27 22:24:01,466 INFO L290 TraceCheckUtils]: 27: Hoare triple {2807#(and (<= 1 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:01,467 INFO L290 TraceCheckUtils]: 28: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:01,468 INFO L290 TraceCheckUtils]: 29: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:01,469 INFO L290 TraceCheckUtils]: 30: Hoare triple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:01,470 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2795#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:01,470 INFO L290 TraceCheckUtils]: 32: Hoare triple {2795#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {2796#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:01,471 INFO L272 TraceCheckUtils]: 33: Hoare triple {2796#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:24:01,471 INFO L290 TraceCheckUtils]: 34: Hoare triple {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2798#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:24:01,472 INFO L290 TraceCheckUtils]: 35: Hoare triple {2798#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2767#false} is VALID [2022-04-27 22:24:01,472 INFO L290 TraceCheckUtils]: 36: Hoare triple {2767#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2767#false} is VALID [2022-04-27 22:24:01,472 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:01,472 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:01,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [658046393] [2022-04-27 22:24:01,472 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [658046393] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:01,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [521732243] [2022-04-27 22:24:01,472 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:01,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:01,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:01,474 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-27 22:24:01,480 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-27 22:24:01,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:01,548 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-27 22:24:01,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:01,571 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:02,148 INFO L272 TraceCheckUtils]: 0: Hoare triple {2766#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,148 INFO L290 TraceCheckUtils]: 1: Hoare triple {2766#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2766#true} is VALID [2022-04-27 22:24:02,148 INFO L290 TraceCheckUtils]: 2: Hoare triple {2766#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,148 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2766#true} {2766#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,148 INFO L272 TraceCheckUtils]: 4: Hoare triple {2766#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,148 INFO L290 TraceCheckUtils]: 5: Hoare triple {2766#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:02,149 INFO L290 TraceCheckUtils]: 6: Hoare triple {2766#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,149 INFO L272 TraceCheckUtils]: 7: Hoare triple {2766#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:02,149 INFO L290 TraceCheckUtils]: 8: Hoare triple {2766#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:02,149 INFO L290 TraceCheckUtils]: 9: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:02,150 INFO L290 TraceCheckUtils]: 10: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:02,150 INFO L290 TraceCheckUtils]: 11: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:02,151 INFO L290 TraceCheckUtils]: 12: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:02,151 INFO L290 TraceCheckUtils]: 13: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2852#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:02,151 INFO L290 TraceCheckUtils]: 14: Hoare triple {2852#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:02,152 INFO L290 TraceCheckUtils]: 15: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:02,152 INFO L290 TraceCheckUtils]: 16: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:02,152 INFO L290 TraceCheckUtils]: 17: Hoare triple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:02,153 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} {2766#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2782#(and (<= |main_#t~ret8| 1) (<= 1 |main_#t~ret8|))} is VALID [2022-04-27 22:24:02,154 INFO L290 TraceCheckUtils]: 19: Hoare triple {2782#(and (<= |main_#t~ret8| 1) (<= 1 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} is VALID [2022-04-27 22:24:02,154 INFO L272 TraceCheckUtils]: 20: Hoare triple {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:02,154 INFO L290 TraceCheckUtils]: 21: Hoare triple {2766#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:02,155 INFO L290 TraceCheckUtils]: 22: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:02,155 INFO L290 TraceCheckUtils]: 23: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:02,155 INFO L290 TraceCheckUtils]: 24: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:02,156 INFO L290 TraceCheckUtils]: 25: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:02,156 INFO L290 TraceCheckUtils]: 26: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2892#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:02,157 INFO L290 TraceCheckUtils]: 27: Hoare triple {2892#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:02,157 INFO L290 TraceCheckUtils]: 28: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:02,157 INFO L290 TraceCheckUtils]: 29: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:02,158 INFO L290 TraceCheckUtils]: 30: Hoare triple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:02,158 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2908#(and (<= |main_#t~ret9| 1) (<= 1 |main_#t~ret9|) (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} is VALID [2022-04-27 22:24:02,159 INFO L290 TraceCheckUtils]: 32: Hoare triple {2908#(and (<= |main_#t~ret9| 1) (<= 1 |main_#t~ret9|) (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {2912#(and (<= main_~n_stones2~0 1) (<= main_~n_stones1~0 1) (<= 1 main_~n_stones2~0) (<= 1 main_~n_stones1~0))} is VALID [2022-04-27 22:24:02,159 INFO L272 TraceCheckUtils]: 33: Hoare triple {2912#(and (<= main_~n_stones2~0 1) (<= main_~n_stones1~0 1) (<= 1 main_~n_stones2~0) (<= 1 main_~n_stones1~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {2916#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:02,160 INFO L290 TraceCheckUtils]: 34: Hoare triple {2916#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2920#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:02,160 INFO L290 TraceCheckUtils]: 35: Hoare triple {2920#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2767#false} is VALID [2022-04-27 22:24:02,160 INFO L290 TraceCheckUtils]: 36: Hoare triple {2767#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2767#false} is VALID [2022-04-27 22:24:02,160 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:02,160 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:02,529 INFO L290 TraceCheckUtils]: 36: Hoare triple {2767#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2767#false} is VALID [2022-04-27 22:24:02,529 INFO L290 TraceCheckUtils]: 35: Hoare triple {2920#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2767#false} is VALID [2022-04-27 22:24:02,529 INFO L290 TraceCheckUtils]: 34: Hoare triple {2916#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2920#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:02,530 INFO L272 TraceCheckUtils]: 33: Hoare triple {2796#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {2916#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:02,530 INFO L290 TraceCheckUtils]: 32: Hoare triple {2795#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {2796#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:02,532 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2795#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:02,532 INFO L290 TraceCheckUtils]: 30: Hoare triple {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:02,533 INFO L290 TraceCheckUtils]: 29: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {2809#(and (<= |student_version_#res| 1) (<= 1 |student_version_#res|))} is VALID [2022-04-27 22:24:02,533 INFO L290 TraceCheckUtils]: 28: Hoare triple {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:02,533 INFO L290 TraceCheckUtils]: 27: Hoare triple {2807#(and (<= 1 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2808#(and (<= 1 student_version_~y~1) (<= student_version_~y~1 1))} is VALID [2022-04-27 22:24:02,534 INFO L290 TraceCheckUtils]: 26: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {2807#(and (<= 1 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 1))} is VALID [2022-04-27 22:24:02,534 INFO L290 TraceCheckUtils]: 25: Hoare triple {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:02,535 INFO L290 TraceCheckUtils]: 24: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {2806#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:02,535 INFO L290 TraceCheckUtils]: 23: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:02,535 INFO L290 TraceCheckUtils]: 22: Hoare triple {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:02,536 INFO L290 TraceCheckUtils]: 21: Hoare triple {2766#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {2805#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:02,536 INFO L272 TraceCheckUtils]: 20: Hoare triple {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:02,536 INFO L290 TraceCheckUtils]: 19: Hoare triple {2782#(and (<= |main_#t~ret8| 1) (<= 1 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {2783#(and (<= main_~n_stones1~0 1) (<= 1 main_~n_stones1~0))} is VALID [2022-04-27 22:24:02,537 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} {2766#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2782#(and (<= |main_#t~ret8| 1) (<= 1 |main_#t~ret8|))} is VALID [2022-04-27 22:24:02,537 INFO L290 TraceCheckUtils]: 17: Hoare triple {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:02,538 INFO L290 TraceCheckUtils]: 16: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {2804#(and (<= 1 |correct_version_#res|) (<= |correct_version_#res| 1))} is VALID [2022-04-27 22:24:02,538 INFO L290 TraceCheckUtils]: 15: Hoare triple {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:02,538 INFO L290 TraceCheckUtils]: 14: Hoare triple {2802#(and (<= 1 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2803#(and (<= 1 correct_version_~y~0) (<= correct_version_~y~0 1))} is VALID [2022-04-27 22:24:02,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {2802#(and (<= 1 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 1))} is VALID [2022-04-27 22:24:02,539 INFO L290 TraceCheckUtils]: 12: Hoare triple {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:02,540 INFO L290 TraceCheckUtils]: 11: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {2801#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:02,540 INFO L290 TraceCheckUtils]: 10: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:02,540 INFO L290 TraceCheckUtils]: 9: Hoare triple {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:02,541 INFO L290 TraceCheckUtils]: 8: Hoare triple {2766#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {2800#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:02,541 INFO L272 TraceCheckUtils]: 7: Hoare triple {2766#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L290 TraceCheckUtils]: 6: Hoare triple {2766#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {2766#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L272 TraceCheckUtils]: 4: Hoare triple {2766#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2766#true} {2766#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {2766#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {2766#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {2766#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2766#true} is VALID [2022-04-27 22:24:02,541 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:02,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [521732243] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:02,542 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:02,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 18, 18] total 25 [2022-04-27 22:24:02,542 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1792706001] [2022-04-27 22:24:02,542 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:02,542 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 19 states have internal predecessors, (37), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 37 [2022-04-27 22:24:02,543 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:02,543 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 19 states have internal predecessors, (37), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:02,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:02,570 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-27 22:24:02,570 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:02,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-27 22:24:02,571 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=543, Unknown=0, NotChecked=0, Total=600 [2022-04-27 22:24:02,571 INFO L87 Difference]: Start difference. First operand 38 states and 43 transitions. Second operand has 25 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 19 states have internal predecessors, (37), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:03,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:03,879 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2022-04-27 22:24:03,879 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-27 22:24:03,880 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 19 states have internal predecessors, (37), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 37 [2022-04-27 22:24:03,880 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:03,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 19 states have internal predecessors, (37), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:03,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 79 transitions. [2022-04-27 22:24:03,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 19 states have internal predecessors, (37), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:03,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 79 transitions. [2022-04-27 22:24:03,882 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 79 transitions. [2022-04-27 22:24:03,942 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:03,943 INFO L225 Difference]: With dead ends: 70 [2022-04-27 22:24:03,943 INFO L226 Difference]: Without dead ends: 64 [2022-04-27 22:24:03,943 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 113 GetRequests, 68 SyntacticMatches, 5 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 245 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=157, Invalid=1565, Unknown=0, NotChecked=0, Total=1722 [2022-04-27 22:24:03,944 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 68 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 630 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 665 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 630 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:03,944 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 113 Invalid, 665 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 630 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-27 22:24:03,944 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2022-04-27 22:24:03,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 54. [2022-04-27 22:24:03,979 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:03,979 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand has 54 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 44 states have internal predecessors, (52), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:03,979 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand has 54 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 44 states have internal predecessors, (52), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:03,979 INFO L87 Difference]: Start difference. First operand 64 states. Second operand has 54 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 44 states have internal predecessors, (52), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:03,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:03,980 INFO L93 Difference]: Finished difference Result 64 states and 77 transitions. [2022-04-27 22:24:03,980 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 77 transitions. [2022-04-27 22:24:03,980 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:03,980 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:03,981 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 44 states have internal predecessors, (52), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 64 states. [2022-04-27 22:24:03,981 INFO L87 Difference]: Start difference. First operand has 54 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 44 states have internal predecessors, (52), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 64 states. [2022-04-27 22:24:03,982 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:03,982 INFO L93 Difference]: Finished difference Result 64 states and 77 transitions. [2022-04-27 22:24:03,982 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 77 transitions. [2022-04-27 22:24:03,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:03,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:03,982 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:03,982 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:03,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 44 states have internal predecessors, (52), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:03,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 64 transitions. [2022-04-27 22:24:03,983 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 64 transitions. Word has length 37 [2022-04-27 22:24:03,983 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:03,983 INFO L495 AbstractCegarLoop]: Abstraction has 54 states and 64 transitions. [2022-04-27 22:24:03,983 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 22 states have (on average 1.6818181818181819) internal successors, (37), 19 states have internal predecessors, (37), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:03,984 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 64 transitions. [2022-04-27 22:24:03,984 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 22:24:03,984 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:03,984 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:24:04,001 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-27 22:24:04,200 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-27 22:24:04,201 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:04,201 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:04,201 INFO L85 PathProgramCache]: Analyzing trace with hash -1189593605, now seen corresponding path program 2 times [2022-04-27 22:24:04,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:04,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1784480100] [2022-04-27 22:24:04,201 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:04,201 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:04,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:04,227 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:04,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:04,230 INFO L290 TraceCheckUtils]: 0: Hoare triple {3403#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3375#true} is VALID [2022-04-27 22:24:04,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {3375#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,231 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3375#true} {3375#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,231 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:04,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 0: Hoare triple {3375#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 1: Hoare triple {3375#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 2: Hoare triple {3375#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 3: Hoare triple {3375#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 4: Hoare triple {3375#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 5: Hoare triple {3375#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 6: Hoare triple {3375#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 7: Hoare triple {3375#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 8: Hoare triple {3375#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L290 TraceCheckUtils]: 9: Hoare triple {3375#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,235 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3375#true} {3375#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,236 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 22:24:04,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:04,259 INFO L290 TraceCheckUtils]: 0: Hoare triple {3375#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {3404#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:04,260 INFO L290 TraceCheckUtils]: 1: Hoare triple {3404#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,260 INFO L290 TraceCheckUtils]: 2: Hoare triple {3405#(<= student_version_~i~1 1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,261 INFO L290 TraceCheckUtils]: 3: Hoare triple {3405#(<= student_version_~i~1 1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,261 INFO L290 TraceCheckUtils]: 4: Hoare triple {3405#(<= student_version_~i~1 1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,261 INFO L290 TraceCheckUtils]: 5: Hoare triple {3405#(<= student_version_~i~1 1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3406#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:24:04,262 INFO L290 TraceCheckUtils]: 6: Hoare triple {3406#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3407#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:24:04,262 INFO L290 TraceCheckUtils]: 7: Hoare triple {3407#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3376#false} is VALID [2022-04-27 22:24:04,262 INFO L290 TraceCheckUtils]: 8: Hoare triple {3376#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,262 INFO L290 TraceCheckUtils]: 9: Hoare triple {3376#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {3376#false} is VALID [2022-04-27 22:24:04,262 INFO L290 TraceCheckUtils]: 10: Hoare triple {3376#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,262 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {3376#false} {3375#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3376#false} is VALID [2022-04-27 22:24:04,263 INFO L272 TraceCheckUtils]: 0: Hoare triple {3375#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3403#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:04,263 INFO L290 TraceCheckUtils]: 1: Hoare triple {3403#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3375#true} is VALID [2022-04-27 22:24:04,263 INFO L290 TraceCheckUtils]: 2: Hoare triple {3375#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,263 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3375#true} {3375#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,263 INFO L272 TraceCheckUtils]: 4: Hoare triple {3375#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,263 INFO L290 TraceCheckUtils]: 5: Hoare triple {3375#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,263 INFO L290 TraceCheckUtils]: 6: Hoare triple {3375#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,263 INFO L272 TraceCheckUtils]: 7: Hoare triple {3375#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,263 INFO L290 TraceCheckUtils]: 8: Hoare triple {3375#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 9: Hoare triple {3375#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 10: Hoare triple {3375#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 11: Hoare triple {3375#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 12: Hoare triple {3375#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {3375#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {3375#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 15: Hoare triple {3375#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {3375#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 17: Hoare triple {3375#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3375#true} {3375#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L290 TraceCheckUtils]: 19: Hoare triple {3375#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {3375#true} is VALID [2022-04-27 22:24:04,264 INFO L272 TraceCheckUtils]: 20: Hoare triple {3375#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,265 INFO L290 TraceCheckUtils]: 21: Hoare triple {3375#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {3404#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:04,265 INFO L290 TraceCheckUtils]: 22: Hoare triple {3404#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,265 INFO L290 TraceCheckUtils]: 23: Hoare triple {3405#(<= student_version_~i~1 1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,266 INFO L290 TraceCheckUtils]: 24: Hoare triple {3405#(<= student_version_~i~1 1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,266 INFO L290 TraceCheckUtils]: 25: Hoare triple {3405#(<= student_version_~i~1 1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,266 INFO L290 TraceCheckUtils]: 26: Hoare triple {3405#(<= student_version_~i~1 1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3406#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:24:04,267 INFO L290 TraceCheckUtils]: 27: Hoare triple {3406#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3407#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:24:04,267 INFO L290 TraceCheckUtils]: 28: Hoare triple {3407#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3376#false} is VALID [2022-04-27 22:24:04,267 INFO L290 TraceCheckUtils]: 29: Hoare triple {3376#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,267 INFO L290 TraceCheckUtils]: 30: Hoare triple {3376#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {3376#false} is VALID [2022-04-27 22:24:04,267 INFO L290 TraceCheckUtils]: 31: Hoare triple {3376#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,267 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3376#false} {3375#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3376#false} is VALID [2022-04-27 22:24:04,267 INFO L290 TraceCheckUtils]: 33: Hoare triple {3376#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {3376#false} is VALID [2022-04-27 22:24:04,267 INFO L272 TraceCheckUtils]: 34: Hoare triple {3376#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {3376#false} is VALID [2022-04-27 22:24:04,267 INFO L290 TraceCheckUtils]: 35: Hoare triple {3376#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3376#false} is VALID [2022-04-27 22:24:04,268 INFO L290 TraceCheckUtils]: 36: Hoare triple {3376#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,268 INFO L290 TraceCheckUtils]: 37: Hoare triple {3376#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,268 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:04,268 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:04,268 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1784480100] [2022-04-27 22:24:04,268 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1784480100] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:04,268 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1402495393] [2022-04-27 22:24:04,268 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:24:04,268 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:04,268 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:04,269 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-27 22:24:04,287 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-27 22:24:04,333 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:24:04,333 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:04,334 INFO L263 TraceCheckSpWp]: Trace formula consists of 183 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 22:24:04,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:04,343 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:04,458 INFO L272 TraceCheckUtils]: 0: Hoare triple {3375#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,458 INFO L290 TraceCheckUtils]: 1: Hoare triple {3375#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3375#true} is VALID [2022-04-27 22:24:04,458 INFO L290 TraceCheckUtils]: 2: Hoare triple {3375#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,458 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3375#true} {3375#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,458 INFO L272 TraceCheckUtils]: 4: Hoare triple {3375#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 5: Hoare triple {3375#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 6: Hoare triple {3375#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L272 TraceCheckUtils]: 7: Hoare triple {3375#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 8: Hoare triple {3375#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 9: Hoare triple {3375#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 10: Hoare triple {3375#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 11: Hoare triple {3375#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {3375#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {3375#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 14: Hoare triple {3375#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 15: Hoare triple {3375#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {3375#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {3375#true} is VALID [2022-04-27 22:24:04,460 INFO L290 TraceCheckUtils]: 17: Hoare triple {3375#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,460 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3375#true} {3375#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {3375#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {3375#true} is VALID [2022-04-27 22:24:04,460 INFO L272 TraceCheckUtils]: 20: Hoare triple {3375#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,460 INFO L290 TraceCheckUtils]: 21: Hoare triple {3375#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {3404#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:04,461 INFO L290 TraceCheckUtils]: 22: Hoare triple {3404#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,461 INFO L290 TraceCheckUtils]: 23: Hoare triple {3405#(<= student_version_~i~1 1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {3405#(<= student_version_~i~1 1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,462 INFO L290 TraceCheckUtils]: 25: Hoare triple {3405#(<= student_version_~i~1 1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,462 INFO L290 TraceCheckUtils]: 26: Hoare triple {3405#(<= student_version_~i~1 1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3489#(and (<= 0 student_version_~x~1) (<= student_version_~i~1 1))} is VALID [2022-04-27 22:24:04,462 INFO L290 TraceCheckUtils]: 27: Hoare triple {3489#(and (<= 0 student_version_~x~1) (<= student_version_~i~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3493#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 1))} is VALID [2022-04-27 22:24:04,463 INFO L290 TraceCheckUtils]: 28: Hoare triple {3493#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3376#false} is VALID [2022-04-27 22:24:04,463 INFO L290 TraceCheckUtils]: 29: Hoare triple {3376#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L290 TraceCheckUtils]: 30: Hoare triple {3376#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L290 TraceCheckUtils]: 31: Hoare triple {3376#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3376#false} {3375#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L290 TraceCheckUtils]: 33: Hoare triple {3376#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L272 TraceCheckUtils]: 34: Hoare triple {3376#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L290 TraceCheckUtils]: 35: Hoare triple {3376#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L290 TraceCheckUtils]: 36: Hoare triple {3376#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L290 TraceCheckUtils]: 37: Hoare triple {3376#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,464 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:04,464 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:04,582 INFO L290 TraceCheckUtils]: 37: Hoare triple {3376#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L290 TraceCheckUtils]: 36: Hoare triple {3376#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L290 TraceCheckUtils]: 35: Hoare triple {3376#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L272 TraceCheckUtils]: 34: Hoare triple {3376#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L290 TraceCheckUtils]: 33: Hoare triple {3376#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3376#false} {3375#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L290 TraceCheckUtils]: 31: Hoare triple {3376#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L290 TraceCheckUtils]: 30: Hoare triple {3376#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {3376#false} is VALID [2022-04-27 22:24:04,582 INFO L290 TraceCheckUtils]: 29: Hoare triple {3376#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {3376#false} is VALID [2022-04-27 22:24:04,583 INFO L290 TraceCheckUtils]: 28: Hoare triple {3407#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3376#false} is VALID [2022-04-27 22:24:04,583 INFO L290 TraceCheckUtils]: 27: Hoare triple {3406#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3407#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:24:04,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {3405#(<= student_version_~i~1 1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {3406#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:24:04,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {3405#(<= student_version_~i~1 1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,584 INFO L290 TraceCheckUtils]: 24: Hoare triple {3405#(<= student_version_~i~1 1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,584 INFO L290 TraceCheckUtils]: 23: Hoare triple {3405#(<= student_version_~i~1 1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,585 INFO L290 TraceCheckUtils]: 22: Hoare triple {3404#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {3405#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:04,585 INFO L290 TraceCheckUtils]: 21: Hoare triple {3375#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {3404#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:04,585 INFO L272 TraceCheckUtils]: 20: Hoare triple {3375#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,585 INFO L290 TraceCheckUtils]: 19: Hoare triple {3375#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {3375#true} is VALID [2022-04-27 22:24:04,585 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3375#true} {3375#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 17: Hoare triple {3375#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 16: Hoare triple {3375#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 15: Hoare triple {3375#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 14: Hoare triple {3375#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 13: Hoare triple {3375#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 12: Hoare triple {3375#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 11: Hoare triple {3375#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 10: Hoare triple {3375#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 9: Hoare triple {3375#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 8: Hoare triple {3375#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L272 TraceCheckUtils]: 7: Hoare triple {3375#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,586 INFO L290 TraceCheckUtils]: 6: Hoare triple {3375#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,587 INFO L290 TraceCheckUtils]: 5: Hoare triple {3375#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {3375#true} is VALID [2022-04-27 22:24:04,587 INFO L272 TraceCheckUtils]: 4: Hoare triple {3375#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,587 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3375#true} {3375#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {3375#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,587 INFO L290 TraceCheckUtils]: 1: Hoare triple {3375#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3375#true} is VALID [2022-04-27 22:24:04,587 INFO L272 TraceCheckUtils]: 0: Hoare triple {3375#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3375#true} is VALID [2022-04-27 22:24:04,587 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:04,587 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1402495393] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:04,587 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:04,587 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 9 [2022-04-27 22:24:04,587 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1659377078] [2022-04-27 22:24:04,587 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:04,588 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.7777777777777777) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 38 [2022-04-27 22:24:04,589 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:04,589 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.7777777777777777) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:04,612 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:04,612 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 22:24:04,612 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:04,612 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 22:24:04,612 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-04-27 22:24:04,613 INFO L87 Difference]: Start difference. First operand 54 states and 64 transitions. Second operand has 9 states, 9 states have (on average 3.7777777777777777) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:04,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:04,977 INFO L93 Difference]: Finished difference Result 80 states and 97 transitions. [2022-04-27 22:24:04,977 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 22:24:04,977 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.7777777777777777) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 38 [2022-04-27 22:24:04,977 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:04,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.7777777777777777) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:04,978 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 59 transitions. [2022-04-27 22:24:04,978 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.7777777777777777) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:04,978 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 59 transitions. [2022-04-27 22:24:04,978 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 59 transitions. [2022-04-27 22:24:05,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:05,026 INFO L225 Difference]: With dead ends: 80 [2022-04-27 22:24:05,027 INFO L226 Difference]: Without dead ends: 70 [2022-04-27 22:24:05,027 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=56, Invalid=126, Unknown=0, NotChecked=0, Total=182 [2022-04-27 22:24:05,028 INFO L413 NwaCegarLoop]: 32 mSDtfsCounter, 43 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 139 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 54 SdHoareTripleChecker+Invalid, 149 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 139 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:05,028 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 54 Invalid, 149 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 139 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:24:05,028 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-27 22:24:05,086 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 64. [2022-04-27 22:24:05,086 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:05,086 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 64 states, 52 states have (on average 1.25) internal successors, (65), 54 states have internal predecessors, (65), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:05,087 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 64 states, 52 states have (on average 1.25) internal successors, (65), 54 states have internal predecessors, (65), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:05,087 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 64 states, 52 states have (on average 1.25) internal successors, (65), 54 states have internal predecessors, (65), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:05,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:05,088 INFO L93 Difference]: Finished difference Result 70 states and 84 transitions. [2022-04-27 22:24:05,088 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 84 transitions. [2022-04-27 22:24:05,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:05,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:05,088 INFO L74 IsIncluded]: Start isIncluded. First operand has 64 states, 52 states have (on average 1.25) internal successors, (65), 54 states have internal predecessors, (65), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 70 states. [2022-04-27 22:24:05,089 INFO L87 Difference]: Start difference. First operand has 64 states, 52 states have (on average 1.25) internal successors, (65), 54 states have internal predecessors, (65), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Second operand 70 states. [2022-04-27 22:24:05,090 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:05,090 INFO L93 Difference]: Finished difference Result 70 states and 84 transitions. [2022-04-27 22:24:05,090 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 84 transitions. [2022-04-27 22:24:05,090 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:05,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:05,090 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:05,090 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:05,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 52 states have (on average 1.25) internal successors, (65), 54 states have internal predecessors, (65), 6 states have call successors, (6), 5 states have call predecessors, (6), 5 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 22:24:05,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 77 transitions. [2022-04-27 22:24:05,092 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 77 transitions. Word has length 38 [2022-04-27 22:24:05,092 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:05,092 INFO L495 AbstractCegarLoop]: Abstraction has 64 states and 77 transitions. [2022-04-27 22:24:05,092 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.7777777777777777) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:05,092 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 77 transitions. [2022-04-27 22:24:05,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 22:24:05,092 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:05,093 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:24:05,109 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-27 22:24:05,309 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,SelfDestructingSolverStorable11 [2022-04-27 22:24:05,309 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:05,310 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:05,310 INFO L85 PathProgramCache]: Analyzing trace with hash 764427933, now seen corresponding path program 3 times [2022-04-27 22:24:05,310 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:05,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [280327832] [2022-04-27 22:24:05,310 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:05,310 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:05,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:05,338 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:05,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:05,340 INFO L290 TraceCheckUtils]: 0: Hoare triple {4019#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3990#true} is VALID [2022-04-27 22:24:05,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {3990#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,341 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3990#true} {3990#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,341 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:05,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:05,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {3990#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:05,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:05,375 INFO L290 TraceCheckUtils]: 2: Hoare triple {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:05,376 INFO L290 TraceCheckUtils]: 3: Hoare triple {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4021#(and (<= correct_version_~l~0 |correct_version_#in~a|) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:24:05,376 INFO L290 TraceCheckUtils]: 4: Hoare triple {4021#(and (<= correct_version_~l~0 |correct_version_#in~a|) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,376 INFO L290 TraceCheckUtils]: 5: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,377 INFO L290 TraceCheckUtils]: 6: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,377 INFO L290 TraceCheckUtils]: 7: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,377 INFO L290 TraceCheckUtils]: 8: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,378 INFO L290 TraceCheckUtils]: 9: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,378 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} {3990#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4006#(<= main_~m~0 main_~a~0)} is VALID [2022-04-27 22:24:05,378 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 22:24:05,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:05,427 INFO L290 TraceCheckUtils]: 0: Hoare triple {3990#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,428 INFO L290 TraceCheckUtils]: 3: Hoare triple {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4024#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:05,428 INFO L290 TraceCheckUtils]: 4: Hoare triple {4024#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4025#(and (<= (+ |student_version_#in~a| 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,429 INFO L290 TraceCheckUtils]: 5: Hoare triple {4025#(and (<= (+ |student_version_#in~a| 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,429 INFO L290 TraceCheckUtils]: 6: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,430 INFO L290 TraceCheckUtils]: 8: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,433 INFO L290 TraceCheckUtils]: 9: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,433 INFO L290 TraceCheckUtils]: 10: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,434 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} {4006#(<= main_~m~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3991#false} is VALID [2022-04-27 22:24:05,434 INFO L272 TraceCheckUtils]: 0: Hoare triple {3990#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4019#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:05,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {4019#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3990#true} is VALID [2022-04-27 22:24:05,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {3990#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,435 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3990#true} {3990#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,435 INFO L272 TraceCheckUtils]: 4: Hoare triple {3990#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,435 INFO L290 TraceCheckUtils]: 5: Hoare triple {3990#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:05,435 INFO L290 TraceCheckUtils]: 6: Hoare triple {3990#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,435 INFO L272 TraceCheckUtils]: 7: Hoare triple {3990#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:05,435 INFO L290 TraceCheckUtils]: 8: Hoare triple {3990#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:05,436 INFO L290 TraceCheckUtils]: 9: Hoare triple {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:05,436 INFO L290 TraceCheckUtils]: 10: Hoare triple {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:05,436 INFO L290 TraceCheckUtils]: 11: Hoare triple {4020#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4021#(and (<= correct_version_~l~0 |correct_version_#in~a|) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:24:05,437 INFO L290 TraceCheckUtils]: 12: Hoare triple {4021#(and (<= correct_version_~l~0 |correct_version_#in~a|) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,437 INFO L290 TraceCheckUtils]: 13: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,437 INFO L290 TraceCheckUtils]: 14: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,438 INFO L290 TraceCheckUtils]: 15: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,439 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} {3990#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4006#(<= main_~m~0 main_~a~0)} is VALID [2022-04-27 22:24:05,439 INFO L290 TraceCheckUtils]: 19: Hoare triple {4006#(<= main_~m~0 main_~a~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {4006#(<= main_~m~0 main_~a~0)} is VALID [2022-04-27 22:24:05,439 INFO L272 TraceCheckUtils]: 20: Hoare triple {4006#(<= main_~m~0 main_~a~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:05,440 INFO L290 TraceCheckUtils]: 21: Hoare triple {3990#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,440 INFO L290 TraceCheckUtils]: 22: Hoare triple {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,440 INFO L290 TraceCheckUtils]: 23: Hoare triple {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,441 INFO L290 TraceCheckUtils]: 24: Hoare triple {4023#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4024#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:05,441 INFO L290 TraceCheckUtils]: 25: Hoare triple {4024#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4025#(and (<= (+ |student_version_#in~a| 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:05,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {4025#(and (<= (+ |student_version_#in~a| 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,442 INFO L290 TraceCheckUtils]: 27: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,442 INFO L290 TraceCheckUtils]: 28: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,442 INFO L290 TraceCheckUtils]: 29: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,443 INFO L290 TraceCheckUtils]: 30: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,443 INFO L290 TraceCheckUtils]: 31: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,444 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} {4006#(<= main_~m~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3991#false} is VALID [2022-04-27 22:24:05,444 INFO L290 TraceCheckUtils]: 33: Hoare triple {3991#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {3991#false} is VALID [2022-04-27 22:24:05,444 INFO L272 TraceCheckUtils]: 34: Hoare triple {3991#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {3991#false} is VALID [2022-04-27 22:24:05,444 INFO L290 TraceCheckUtils]: 35: Hoare triple {3991#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3991#false} is VALID [2022-04-27 22:24:05,444 INFO L290 TraceCheckUtils]: 36: Hoare triple {3991#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3991#false} is VALID [2022-04-27 22:24:05,444 INFO L290 TraceCheckUtils]: 37: Hoare triple {3991#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3991#false} is VALID [2022-04-27 22:24:05,444 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:05,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:05,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [280327832] [2022-04-27 22:24:05,444 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [280327832] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:05,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [212340692] [2022-04-27 22:24:05,445 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:24:05,445 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:05,445 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:05,446 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-27 22:24:05,447 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-27 22:24:05,490 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-27 22:24:05,490 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:05,491 INFO L263 TraceCheckSpWp]: Trace formula consists of 183 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 22:24:05,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:05,501 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:05,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {3990#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {3990#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3990#true} is VALID [2022-04-27 22:24:05,763 INFO L290 TraceCheckUtils]: 2: Hoare triple {3990#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,763 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3990#true} {3990#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,763 INFO L272 TraceCheckUtils]: 4: Hoare triple {3990#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,763 INFO L290 TraceCheckUtils]: 5: Hoare triple {3990#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:05,763 INFO L290 TraceCheckUtils]: 6: Hoare triple {3990#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:05,763 INFO L272 TraceCheckUtils]: 7: Hoare triple {3990#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:05,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {3990#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4054#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:05,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {4054#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4054#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:05,764 INFO L290 TraceCheckUtils]: 10: Hoare triple {4054#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4054#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:05,765 INFO L290 TraceCheckUtils]: 11: Hoare triple {4054#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4064#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:05,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {4064#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,765 INFO L290 TraceCheckUtils]: 13: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,766 INFO L290 TraceCheckUtils]: 14: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,766 INFO L290 TraceCheckUtils]: 15: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,766 INFO L290 TraceCheckUtils]: 17: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:05,767 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} {3990#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4006#(<= main_~m~0 main_~a~0)} is VALID [2022-04-27 22:24:05,767 INFO L290 TraceCheckUtils]: 19: Hoare triple {4006#(<= main_~m~0 main_~a~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {4006#(<= main_~m~0 main_~a~0)} is VALID [2022-04-27 22:24:05,767 INFO L272 TraceCheckUtils]: 20: Hoare triple {4006#(<= main_~m~0 main_~a~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:05,768 INFO L290 TraceCheckUtils]: 21: Hoare triple {3990#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4095#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:05,768 INFO L290 TraceCheckUtils]: 22: Hoare triple {4095#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4095#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:05,769 INFO L290 TraceCheckUtils]: 23: Hoare triple {4095#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4095#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:05,769 INFO L290 TraceCheckUtils]: 24: Hoare triple {4095#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4105#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~l~1))} is VALID [2022-04-27 22:24:05,770 INFO L290 TraceCheckUtils]: 25: Hoare triple {4105#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,770 INFO L290 TraceCheckUtils]: 26: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,770 INFO L290 TraceCheckUtils]: 27: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,770 INFO L290 TraceCheckUtils]: 28: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,771 INFO L290 TraceCheckUtils]: 29: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,771 INFO L290 TraceCheckUtils]: 30: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,772 INFO L290 TraceCheckUtils]: 31: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:05,773 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} {4006#(<= main_~m~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3991#false} is VALID [2022-04-27 22:24:05,773 INFO L290 TraceCheckUtils]: 33: Hoare triple {3991#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {3991#false} is VALID [2022-04-27 22:24:05,773 INFO L272 TraceCheckUtils]: 34: Hoare triple {3991#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {3991#false} is VALID [2022-04-27 22:24:05,773 INFO L290 TraceCheckUtils]: 35: Hoare triple {3991#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3991#false} is VALID [2022-04-27 22:24:05,773 INFO L290 TraceCheckUtils]: 36: Hoare triple {3991#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3991#false} is VALID [2022-04-27 22:24:05,773 INFO L290 TraceCheckUtils]: 37: Hoare triple {3991#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3991#false} is VALID [2022-04-27 22:24:05,773 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:05,773 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:06,419 INFO L290 TraceCheckUtils]: 37: Hoare triple {3991#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3991#false} is VALID [2022-04-27 22:24:06,419 INFO L290 TraceCheckUtils]: 36: Hoare triple {3991#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3991#false} is VALID [2022-04-27 22:24:06,419 INFO L290 TraceCheckUtils]: 35: Hoare triple {3991#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3991#false} is VALID [2022-04-27 22:24:06,419 INFO L272 TraceCheckUtils]: 34: Hoare triple {3991#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {3991#false} is VALID [2022-04-27 22:24:06,419 INFO L290 TraceCheckUtils]: 33: Hoare triple {3991#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {3991#false} is VALID [2022-04-27 22:24:06,421 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} {4006#(<= main_~m~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3991#false} is VALID [2022-04-27 22:24:06,421 INFO L290 TraceCheckUtils]: 31: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:06,421 INFO L290 TraceCheckUtils]: 30: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:06,421 INFO L290 TraceCheckUtils]: 29: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:06,422 INFO L290 TraceCheckUtils]: 28: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:06,422 INFO L290 TraceCheckUtils]: 27: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:06,422 INFO L290 TraceCheckUtils]: 26: Hoare triple {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:06,423 INFO L290 TraceCheckUtils]: 25: Hoare triple {4184#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4026#(<= (+ |student_version_#in~a| 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:06,423 INFO L290 TraceCheckUtils]: 24: Hoare triple {4188#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4184#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:24:06,423 INFO L290 TraceCheckUtils]: 23: Hoare triple {4188#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4188#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:24:06,424 INFO L290 TraceCheckUtils]: 22: Hoare triple {4188#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4188#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:24:06,424 INFO L290 TraceCheckUtils]: 21: Hoare triple {3990#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4188#(or (<= (+ |student_version_#in~a| 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:24:06,424 INFO L272 TraceCheckUtils]: 20: Hoare triple {4006#(<= main_~m~0 main_~a~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:06,424 INFO L290 TraceCheckUtils]: 19: Hoare triple {4006#(<= main_~m~0 main_~a~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {4006#(<= main_~m~0 main_~a~0)} is VALID [2022-04-27 22:24:06,425 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} {3990#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4006#(<= main_~m~0 main_~a~0)} is VALID [2022-04-27 22:24:06,425 INFO L290 TraceCheckUtils]: 17: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:06,426 INFO L290 TraceCheckUtils]: 16: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:06,426 INFO L290 TraceCheckUtils]: 15: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:06,426 INFO L290 TraceCheckUtils]: 14: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:06,426 INFO L290 TraceCheckUtils]: 13: Hoare triple {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:06,427 INFO L290 TraceCheckUtils]: 12: Hoare triple {4225#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4022#(<= |correct_version_#in~m| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:06,427 INFO L290 TraceCheckUtils]: 11: Hoare triple {4229#(or (<= |correct_version_#in~m| |correct_version_#in~a|) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4225#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| |correct_version_#in~a|))} is VALID [2022-04-27 22:24:06,427 INFO L290 TraceCheckUtils]: 10: Hoare triple {4229#(or (<= |correct_version_#in~m| |correct_version_#in~a|) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4229#(or (<= |correct_version_#in~m| |correct_version_#in~a|) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:24:06,428 INFO L290 TraceCheckUtils]: 9: Hoare triple {4229#(or (<= |correct_version_#in~m| |correct_version_#in~a|) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4229#(or (<= |correct_version_#in~m| |correct_version_#in~a|) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:24:06,428 INFO L290 TraceCheckUtils]: 8: Hoare triple {3990#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4229#(or (<= |correct_version_#in~m| |correct_version_#in~a|) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:24:06,428 INFO L272 TraceCheckUtils]: 7: Hoare triple {3990#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:06,428 INFO L290 TraceCheckUtils]: 6: Hoare triple {3990#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:06,428 INFO L290 TraceCheckUtils]: 5: Hoare triple {3990#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {3990#true} is VALID [2022-04-27 22:24:06,429 INFO L272 TraceCheckUtils]: 4: Hoare triple {3990#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:06,429 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3990#true} {3990#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:06,429 INFO L290 TraceCheckUtils]: 2: Hoare triple {3990#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:06,429 INFO L290 TraceCheckUtils]: 1: Hoare triple {3990#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3990#true} is VALID [2022-04-27 22:24:06,429 INFO L272 TraceCheckUtils]: 0: Hoare triple {3990#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3990#true} is VALID [2022-04-27 22:24:06,429 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:06,429 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [212340692] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:06,429 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:06,429 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9, 9] total 19 [2022-04-27 22:24:06,429 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1270677832] [2022-04-27 22:24:06,429 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:06,430 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 38 [2022-04-27 22:24:06,430 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:06,430 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:06,466 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:06,466 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-27 22:24:06,466 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:06,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-27 22:24:06,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=288, Unknown=0, NotChecked=0, Total=342 [2022-04-27 22:24:06,467 INFO L87 Difference]: Start difference. First operand 64 states and 77 transitions. Second operand has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:07,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:07,398 INFO L93 Difference]: Finished difference Result 82 states and 100 transitions. [2022-04-27 22:24:07,398 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:24:07,398 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 38 [2022-04-27 22:24:07,398 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:07,398 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:07,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 66 transitions. [2022-04-27 22:24:07,399 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:07,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 66 transitions. [2022-04-27 22:24:07,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 66 transitions. [2022-04-27 22:24:07,477 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:07,479 INFO L225 Difference]: With dead ends: 82 [2022-04-27 22:24:07,479 INFO L226 Difference]: Without dead ends: 76 [2022-04-27 22:24:07,480 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 70 SyntacticMatches, 2 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 64 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=108, Invalid=594, Unknown=0, NotChecked=0, Total=702 [2022-04-27 22:24:07,480 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 95 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 409 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 99 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 425 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 409 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:07,481 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [99 Valid, 81 Invalid, 425 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 409 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-27 22:24:07,481 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-04-27 22:24:07,554 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 74. [2022-04-27 22:24:07,554 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:07,555 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 74 states, 59 states have (on average 1.2542372881355932) internal successors, (74), 63 states have internal predecessors, (74), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:07,555 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 74 states, 59 states have (on average 1.2542372881355932) internal successors, (74), 63 states have internal predecessors, (74), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:07,555 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 74 states, 59 states have (on average 1.2542372881355932) internal successors, (74), 63 states have internal predecessors, (74), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:07,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:07,556 INFO L93 Difference]: Finished difference Result 76 states and 93 transitions. [2022-04-27 22:24:07,556 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 93 transitions. [2022-04-27 22:24:07,557 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:07,557 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:07,557 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 59 states have (on average 1.2542372881355932) internal successors, (74), 63 states have internal predecessors, (74), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Second operand 76 states. [2022-04-27 22:24:07,557 INFO L87 Difference]: Start difference. First operand has 74 states, 59 states have (on average 1.2542372881355932) internal successors, (74), 63 states have internal predecessors, (74), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Second operand 76 states. [2022-04-27 22:24:07,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:07,558 INFO L93 Difference]: Finished difference Result 76 states and 93 transitions. [2022-04-27 22:24:07,558 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 93 transitions. [2022-04-27 22:24:07,559 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:07,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:07,559 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:07,559 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:07,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 59 states have (on average 1.2542372881355932) internal successors, (74), 63 states have internal predecessors, (74), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:07,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 91 transitions. [2022-04-27 22:24:07,560 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 91 transitions. Word has length 38 [2022-04-27 22:24:07,560 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:07,560 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 91 transitions. [2022-04-27 22:24:07,560 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:07,560 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 91 transitions. [2022-04-27 22:24:07,561 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 22:24:07,561 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:07,561 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:24:07,577 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-27 22:24:07,777 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:07,777 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:07,778 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:07,778 INFO L85 PathProgramCache]: Analyzing trace with hash -781171018, now seen corresponding path program 4 times [2022-04-27 22:24:07,778 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:07,778 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1030661026] [2022-04-27 22:24:07,778 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:07,778 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:07,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:07,803 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:07,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:07,805 INFO L290 TraceCheckUtils]: 0: Hoare triple {4679#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {4651#true} is VALID [2022-04-27 22:24:07,805 INFO L290 TraceCheckUtils]: 1: Hoare triple {4651#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,805 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4651#true} {4651#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,805 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:07,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:07,829 INFO L290 TraceCheckUtils]: 0: Hoare triple {4651#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4680#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:07,829 INFO L290 TraceCheckUtils]: 1: Hoare triple {4680#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {4681#(<= correct_version_~i~0 1)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,830 INFO L290 TraceCheckUtils]: 3: Hoare triple {4681#(<= correct_version_~i~0 1)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,830 INFO L290 TraceCheckUtils]: 4: Hoare triple {4681#(<= correct_version_~i~0 1)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,830 INFO L290 TraceCheckUtils]: 5: Hoare triple {4681#(<= correct_version_~i~0 1)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4682#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:24:07,831 INFO L290 TraceCheckUtils]: 6: Hoare triple {4682#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4683#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:24:07,831 INFO L290 TraceCheckUtils]: 7: Hoare triple {4683#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4652#false} is VALID [2022-04-27 22:24:07,831 INFO L290 TraceCheckUtils]: 8: Hoare triple {4652#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,831 INFO L290 TraceCheckUtils]: 9: Hoare triple {4652#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4652#false} is VALID [2022-04-27 22:24:07,831 INFO L290 TraceCheckUtils]: 10: Hoare triple {4652#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,831 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {4652#false} {4651#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:07,831 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 22:24:07,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 0: Hoare triple {4651#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {4651#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {4651#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 3: Hoare triple {4651#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 4: Hoare triple {4651#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 5: Hoare triple {4651#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 6: Hoare triple {4651#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 7: Hoare triple {4651#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 8: Hoare triple {4651#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L290 TraceCheckUtils]: 9: Hoare triple {4651#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,837 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4651#true} {4652#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:07,838 INFO L272 TraceCheckUtils]: 0: Hoare triple {4651#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4679#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:07,838 INFO L290 TraceCheckUtils]: 1: Hoare triple {4679#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {4651#true} is VALID [2022-04-27 22:24:07,838 INFO L290 TraceCheckUtils]: 2: Hoare triple {4651#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4651#true} {4651#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {4651#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,838 INFO L290 TraceCheckUtils]: 5: Hoare triple {4651#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:07,838 INFO L290 TraceCheckUtils]: 6: Hoare triple {4651#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,838 INFO L272 TraceCheckUtils]: 7: Hoare triple {4651#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:07,839 INFO L290 TraceCheckUtils]: 8: Hoare triple {4651#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4680#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:07,839 INFO L290 TraceCheckUtils]: 9: Hoare triple {4680#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,839 INFO L290 TraceCheckUtils]: 10: Hoare triple {4681#(<= correct_version_~i~0 1)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,840 INFO L290 TraceCheckUtils]: 11: Hoare triple {4681#(<= correct_version_~i~0 1)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,840 INFO L290 TraceCheckUtils]: 12: Hoare triple {4681#(<= correct_version_~i~0 1)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,840 INFO L290 TraceCheckUtils]: 13: Hoare triple {4681#(<= correct_version_~i~0 1)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4682#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:24:07,841 INFO L290 TraceCheckUtils]: 14: Hoare triple {4682#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4683#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:24:07,841 INFO L290 TraceCheckUtils]: 15: Hoare triple {4683#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4652#false} is VALID [2022-04-27 22:24:07,841 INFO L290 TraceCheckUtils]: 16: Hoare triple {4652#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,841 INFO L290 TraceCheckUtils]: 17: Hoare triple {4652#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4652#false} is VALID [2022-04-27 22:24:07,841 INFO L290 TraceCheckUtils]: 18: Hoare triple {4652#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,841 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4652#false} {4651#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:07,841 INFO L290 TraceCheckUtils]: 20: Hoare triple {4652#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {4652#false} is VALID [2022-04-27 22:24:07,841 INFO L272 TraceCheckUtils]: 21: Hoare triple {4652#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 22: Hoare triple {4651#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 23: Hoare triple {4651#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 24: Hoare triple {4651#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 25: Hoare triple {4651#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 26: Hoare triple {4651#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {4651#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 28: Hoare triple {4651#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 29: Hoare triple {4651#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {4651#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 31: Hoare triple {4651#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,842 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4651#true} {4652#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 33: Hoare triple {4652#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {4652#false} is VALID [2022-04-27 22:24:07,842 INFO L272 TraceCheckUtils]: 34: Hoare triple {4652#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {4652#false} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 35: Hoare triple {4652#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4652#false} is VALID [2022-04-27 22:24:07,842 INFO L290 TraceCheckUtils]: 36: Hoare triple {4652#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,843 INFO L290 TraceCheckUtils]: 37: Hoare triple {4652#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,843 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:07,843 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:07,843 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1030661026] [2022-04-27 22:24:07,843 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1030661026] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:07,843 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1263619757] [2022-04-27 22:24:07,843 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:24:07,843 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:07,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:07,844 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-27 22:24:07,845 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-27 22:24:07,884 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:24:07,884 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:07,885 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 22:24:07,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:07,896 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:07,988 INFO L272 TraceCheckUtils]: 0: Hoare triple {4651#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,988 INFO L290 TraceCheckUtils]: 1: Hoare triple {4651#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {4651#true} is VALID [2022-04-27 22:24:07,988 INFO L290 TraceCheckUtils]: 2: Hoare triple {4651#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,988 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4651#true} {4651#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,988 INFO L272 TraceCheckUtils]: 4: Hoare triple {4651#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,988 INFO L290 TraceCheckUtils]: 5: Hoare triple {4651#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:07,988 INFO L290 TraceCheckUtils]: 6: Hoare triple {4651#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:07,989 INFO L272 TraceCheckUtils]: 7: Hoare triple {4651#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:07,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {4651#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4680#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:07,989 INFO L290 TraceCheckUtils]: 9: Hoare triple {4680#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,990 INFO L290 TraceCheckUtils]: 10: Hoare triple {4681#(<= correct_version_~i~0 1)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,990 INFO L290 TraceCheckUtils]: 11: Hoare triple {4681#(<= correct_version_~i~0 1)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,990 INFO L290 TraceCheckUtils]: 12: Hoare triple {4681#(<= correct_version_~i~0 1)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:07,990 INFO L290 TraceCheckUtils]: 13: Hoare triple {4681#(<= correct_version_~i~0 1)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4726#(and (<= correct_version_~i~0 1) (<= 0 correct_version_~x~0))} is VALID [2022-04-27 22:24:07,991 INFO L290 TraceCheckUtils]: 14: Hoare triple {4726#(and (<= correct_version_~i~0 1) (<= 0 correct_version_~x~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4730#(and (<= correct_version_~i~0 1) (<= 1 correct_version_~x~0))} is VALID [2022-04-27 22:24:07,991 INFO L290 TraceCheckUtils]: 15: Hoare triple {4730#(and (<= correct_version_~i~0 1) (<= 1 correct_version_~x~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4652#false} is VALID [2022-04-27 22:24:07,991 INFO L290 TraceCheckUtils]: 16: Hoare triple {4652#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 17: Hoare triple {4652#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 18: Hoare triple {4652#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4652#false} {4651#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 20: Hoare triple {4652#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L272 TraceCheckUtils]: 21: Hoare triple {4652#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 22: Hoare triple {4652#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 23: Hoare triple {4652#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 24: Hoare triple {4652#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 25: Hoare triple {4652#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 26: Hoare triple {4652#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 27: Hoare triple {4652#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 28: Hoare triple {4652#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4652#false} is VALID [2022-04-27 22:24:07,992 INFO L290 TraceCheckUtils]: 29: Hoare triple {4652#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L290 TraceCheckUtils]: 30: Hoare triple {4652#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L290 TraceCheckUtils]: 31: Hoare triple {4652#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4652#false} {4652#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L290 TraceCheckUtils]: 33: Hoare triple {4652#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L272 TraceCheckUtils]: 34: Hoare triple {4652#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L290 TraceCheckUtils]: 35: Hoare triple {4652#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L290 TraceCheckUtils]: 36: Hoare triple {4652#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L290 TraceCheckUtils]: 37: Hoare triple {4652#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:07,993 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:07,993 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:08,130 INFO L290 TraceCheckUtils]: 37: Hoare triple {4652#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:08,130 INFO L290 TraceCheckUtils]: 36: Hoare triple {4652#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:08,130 INFO L290 TraceCheckUtils]: 35: Hoare triple {4652#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4652#false} is VALID [2022-04-27 22:24:08,130 INFO L272 TraceCheckUtils]: 34: Hoare triple {4652#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {4652#false} is VALID [2022-04-27 22:24:08,131 INFO L290 TraceCheckUtils]: 33: Hoare triple {4652#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {4652#false} is VALID [2022-04-27 22:24:08,131 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4651#true} {4652#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:08,131 INFO L290 TraceCheckUtils]: 31: Hoare triple {4651#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,131 INFO L290 TraceCheckUtils]: 30: Hoare triple {4651#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {4651#true} is VALID [2022-04-27 22:24:08,131 INFO L290 TraceCheckUtils]: 29: Hoare triple {4651#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,131 INFO L290 TraceCheckUtils]: 28: Hoare triple {4651#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4651#true} is VALID [2022-04-27 22:24:08,131 INFO L290 TraceCheckUtils]: 27: Hoare triple {4651#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {4651#true} is VALID [2022-04-27 22:24:08,131 INFO L290 TraceCheckUtils]: 26: Hoare triple {4651#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,132 INFO L290 TraceCheckUtils]: 25: Hoare triple {4651#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {4651#true} is VALID [2022-04-27 22:24:08,132 INFO L290 TraceCheckUtils]: 24: Hoare triple {4651#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,132 INFO L290 TraceCheckUtils]: 23: Hoare triple {4651#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {4651#true} is VALID [2022-04-27 22:24:08,132 INFO L290 TraceCheckUtils]: 22: Hoare triple {4651#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {4651#true} is VALID [2022-04-27 22:24:08,132 INFO L272 TraceCheckUtils]: 21: Hoare triple {4652#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:08,132 INFO L290 TraceCheckUtils]: 20: Hoare triple {4652#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {4652#false} is VALID [2022-04-27 22:24:08,133 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4652#false} {4651#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4652#false} is VALID [2022-04-27 22:24:08,133 INFO L290 TraceCheckUtils]: 18: Hoare triple {4652#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:08,133 INFO L290 TraceCheckUtils]: 17: Hoare triple {4652#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {4652#false} is VALID [2022-04-27 22:24:08,133 INFO L290 TraceCheckUtils]: 16: Hoare triple {4652#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {4652#false} is VALID [2022-04-27 22:24:08,133 INFO L290 TraceCheckUtils]: 15: Hoare triple {4683#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4652#false} is VALID [2022-04-27 22:24:08,134 INFO L290 TraceCheckUtils]: 14: Hoare triple {4682#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4683#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:24:08,134 INFO L290 TraceCheckUtils]: 13: Hoare triple {4681#(<= correct_version_~i~0 1)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {4682#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:24:08,135 INFO L290 TraceCheckUtils]: 12: Hoare triple {4681#(<= correct_version_~i~0 1)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:08,135 INFO L290 TraceCheckUtils]: 11: Hoare triple {4681#(<= correct_version_~i~0 1)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:08,135 INFO L290 TraceCheckUtils]: 10: Hoare triple {4681#(<= correct_version_~i~0 1)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:08,135 INFO L290 TraceCheckUtils]: 9: Hoare triple {4680#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {4681#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:08,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {4651#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {4680#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:08,136 INFO L272 TraceCheckUtils]: 7: Hoare triple {4651#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:08,136 INFO L290 TraceCheckUtils]: 6: Hoare triple {4651#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,136 INFO L290 TraceCheckUtils]: 5: Hoare triple {4651#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {4651#true} is VALID [2022-04-27 22:24:08,137 INFO L272 TraceCheckUtils]: 4: Hoare triple {4651#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,137 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4651#true} {4651#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {4651#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {4651#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {4651#true} is VALID [2022-04-27 22:24:08,138 INFO L272 TraceCheckUtils]: 0: Hoare triple {4651#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4651#true} is VALID [2022-04-27 22:24:08,138 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:08,138 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1263619757] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:08,138 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:08,138 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 9 [2022-04-27 22:24:08,138 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [65737865] [2022-04-27 22:24:08,138 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:08,139 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 38 [2022-04-27 22:24:08,139 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:08,139 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:08,164 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-27 22:24:08,164 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 22:24:08,164 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:08,165 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 22:24:08,165 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-04-27 22:24:08,165 INFO L87 Difference]: Start difference. First operand 74 states and 91 transitions. Second operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:08,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:08,469 INFO L93 Difference]: Finished difference Result 140 states and 174 transitions. [2022-04-27 22:24:08,469 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 22:24:08,469 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 38 [2022-04-27 22:24:08,469 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:08,469 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:08,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2022-04-27 22:24:08,470 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:08,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2022-04-27 22:24:08,471 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 72 transitions. [2022-04-27 22:24:08,550 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:08,551 INFO L225 Difference]: With dead ends: 140 [2022-04-27 22:24:08,551 INFO L226 Difference]: Without dead ends: 90 [2022-04-27 22:24:08,552 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=56, Invalid=126, Unknown=0, NotChecked=0, Total=182 [2022-04-27 22:24:08,552 INFO L413 NwaCegarLoop]: 32 mSDtfsCounter, 49 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 104 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 116 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 104 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:08,552 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 49 Invalid, 116 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:24:08,553 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-27 22:24:08,645 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 84. [2022-04-27 22:24:08,645 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:08,645 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:08,645 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:08,646 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:08,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:08,647 INFO L93 Difference]: Finished difference Result 90 states and 110 transitions. [2022-04-27 22:24:08,647 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 110 transitions. [2022-04-27 22:24:08,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:08,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:08,647 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Second operand 90 states. [2022-04-27 22:24:08,648 INFO L87 Difference]: Start difference. First operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Second operand 90 states. [2022-04-27 22:24:08,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:08,649 INFO L93 Difference]: Finished difference Result 90 states and 110 transitions. [2022-04-27 22:24:08,649 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 110 transitions. [2022-04-27 22:24:08,649 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:08,649 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:08,649 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:08,649 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:08,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-27 22:24:08,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 104 transitions. [2022-04-27 22:24:08,651 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 104 transitions. Word has length 38 [2022-04-27 22:24:08,651 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:08,651 INFO L495 AbstractCegarLoop]: Abstraction has 84 states and 104 transitions. [2022-04-27 22:24:08,651 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:08,651 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 104 transitions. [2022-04-27 22:24:08,651 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 22:24:08,651 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:08,651 INFO L195 NwaCegarLoop]: trace histogram [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-27 22:24:08,668 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-27 22:24:08,867 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:08,868 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:08,868 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:08,868 INFO L85 PathProgramCache]: Analyzing trace with hash -910305133, now seen corresponding path program 5 times [2022-04-27 22:24:08,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:08,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [39431797] [2022-04-27 22:24:08,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:08,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:08,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:08,896 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:08,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:08,900 INFO L290 TraceCheckUtils]: 0: Hoare triple {5447#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {5418#true} is VALID [2022-04-27 22:24:08,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {5418#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:08,900 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5418#true} {5418#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:08,900 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:08,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:08,961 INFO L290 TraceCheckUtils]: 0: Hoare triple {5418#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:08,962 INFO L290 TraceCheckUtils]: 1: Hoare triple {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:08,962 INFO L290 TraceCheckUtils]: 2: Hoare triple {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:08,963 INFO L290 TraceCheckUtils]: 3: Hoare triple {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5449#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:08,963 INFO L290 TraceCheckUtils]: 4: Hoare triple {5449#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5450#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ |correct_version_#in~a| 1) correct_version_~m))} is VALID [2022-04-27 22:24:08,964 INFO L290 TraceCheckUtils]: 5: Hoare triple {5450#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ |correct_version_#in~a| 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:08,964 INFO L290 TraceCheckUtils]: 6: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:08,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:08,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:08,965 INFO L290 TraceCheckUtils]: 9: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:08,965 INFO L290 TraceCheckUtils]: 10: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:08,966 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} {5418#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {5435#(<= (+ main_~a~0 1) main_~m~0)} is VALID [2022-04-27 22:24:08,966 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 22:24:08,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:09,032 INFO L290 TraceCheckUtils]: 0: Hoare triple {5418#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:09,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:09,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:09,034 INFO L290 TraceCheckUtils]: 3: Hoare triple {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {5453#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 |student_version_#in~a|))} is VALID [2022-04-27 22:24:09,034 INFO L290 TraceCheckUtils]: 4: Hoare triple {5453#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,035 INFO L290 TraceCheckUtils]: 6: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,035 INFO L290 TraceCheckUtils]: 8: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,036 INFO L290 TraceCheckUtils]: 9: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,036 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} {5435#(<= (+ main_~a~0 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {5419#false} is VALID [2022-04-27 22:24:09,037 INFO L272 TraceCheckUtils]: 0: Hoare triple {5418#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5447#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:09,037 INFO L290 TraceCheckUtils]: 1: Hoare triple {5447#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {5418#true} is VALID [2022-04-27 22:24:09,037 INFO L290 TraceCheckUtils]: 2: Hoare triple {5418#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,037 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5418#true} {5418#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,037 INFO L272 TraceCheckUtils]: 4: Hoare triple {5418#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,037 INFO L290 TraceCheckUtils]: 5: Hoare triple {5418#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:09,037 INFO L290 TraceCheckUtils]: 6: Hoare triple {5418#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,038 INFO L272 TraceCheckUtils]: 7: Hoare triple {5418#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:09,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {5418#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:09,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:09,039 INFO L290 TraceCheckUtils]: 10: Hoare triple {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:09,039 INFO L290 TraceCheckUtils]: 11: Hoare triple {5448#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5449#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:09,040 INFO L290 TraceCheckUtils]: 12: Hoare triple {5449#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5450#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ |correct_version_#in~a| 1) correct_version_~m))} is VALID [2022-04-27 22:24:09,040 INFO L290 TraceCheckUtils]: 13: Hoare triple {5450#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ |correct_version_#in~a| 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,041 INFO L290 TraceCheckUtils]: 15: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,041 INFO L290 TraceCheckUtils]: 16: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,041 INFO L290 TraceCheckUtils]: 17: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,042 INFO L290 TraceCheckUtils]: 18: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,042 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} {5418#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {5435#(<= (+ main_~a~0 1) main_~m~0)} is VALID [2022-04-27 22:24:09,043 INFO L290 TraceCheckUtils]: 20: Hoare triple {5435#(<= (+ main_~a~0 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {5435#(<= (+ main_~a~0 1) main_~m~0)} is VALID [2022-04-27 22:24:09,043 INFO L272 TraceCheckUtils]: 21: Hoare triple {5435#(<= (+ main_~a~0 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:09,043 INFO L290 TraceCheckUtils]: 22: Hoare triple {5418#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:09,044 INFO L290 TraceCheckUtils]: 23: Hoare triple {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:09,044 INFO L290 TraceCheckUtils]: 24: Hoare triple {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:09,045 INFO L290 TraceCheckUtils]: 25: Hoare triple {5452#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {5453#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 |student_version_#in~a|))} is VALID [2022-04-27 22:24:09,045 INFO L290 TraceCheckUtils]: 26: Hoare triple {5453#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,045 INFO L290 TraceCheckUtils]: 27: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,046 INFO L290 TraceCheckUtils]: 28: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,046 INFO L290 TraceCheckUtils]: 29: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,046 INFO L290 TraceCheckUtils]: 30: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,046 INFO L290 TraceCheckUtils]: 31: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,047 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} {5435#(<= (+ main_~a~0 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {5419#false} is VALID [2022-04-27 22:24:09,047 INFO L290 TraceCheckUtils]: 33: Hoare triple {5419#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {5419#false} is VALID [2022-04-27 22:24:09,047 INFO L272 TraceCheckUtils]: 34: Hoare triple {5419#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {5419#false} is VALID [2022-04-27 22:24:09,047 INFO L290 TraceCheckUtils]: 35: Hoare triple {5419#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5419#false} is VALID [2022-04-27 22:24:09,048 INFO L290 TraceCheckUtils]: 36: Hoare triple {5419#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {5419#false} is VALID [2022-04-27 22:24:09,048 INFO L290 TraceCheckUtils]: 37: Hoare triple {5419#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5419#false} is VALID [2022-04-27 22:24:09,048 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:09,048 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:09,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [39431797] [2022-04-27 22:24:09,048 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [39431797] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:09,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [89502610] [2022-04-27 22:24:09,048 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:24:09,048 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:09,048 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:09,064 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-27 22:24:09,087 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-27 22:24:09,115 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:24:09,116 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:09,116 INFO L263 TraceCheckSpWp]: Trace formula consists of 183 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 22:24:09,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:09,126 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:09,376 INFO L272 TraceCheckUtils]: 0: Hoare triple {5418#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,376 INFO L290 TraceCheckUtils]: 1: Hoare triple {5418#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {5418#true} is VALID [2022-04-27 22:24:09,376 INFO L290 TraceCheckUtils]: 2: Hoare triple {5418#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,376 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5418#true} {5418#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,377 INFO L272 TraceCheckUtils]: 4: Hoare triple {5418#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {5418#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:09,377 INFO L290 TraceCheckUtils]: 6: Hoare triple {5418#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:09,377 INFO L272 TraceCheckUtils]: 7: Hoare triple {5418#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:09,377 INFO L290 TraceCheckUtils]: 8: Hoare triple {5418#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {5482#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:09,378 INFO L290 TraceCheckUtils]: 9: Hoare triple {5482#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {5482#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:09,378 INFO L290 TraceCheckUtils]: 10: Hoare triple {5482#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {5482#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:09,379 INFO L290 TraceCheckUtils]: 11: Hoare triple {5482#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5492#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~l~0))} is VALID [2022-04-27 22:24:09,379 INFO L290 TraceCheckUtils]: 12: Hoare triple {5492#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,379 INFO L290 TraceCheckUtils]: 13: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,380 INFO L290 TraceCheckUtils]: 14: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,380 INFO L290 TraceCheckUtils]: 15: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,380 INFO L290 TraceCheckUtils]: 16: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,380 INFO L290 TraceCheckUtils]: 17: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,381 INFO L290 TraceCheckUtils]: 18: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:09,381 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} {5418#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {5435#(<= (+ main_~a~0 1) main_~m~0)} is VALID [2022-04-27 22:24:09,382 INFO L290 TraceCheckUtils]: 20: Hoare triple {5435#(<= (+ main_~a~0 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {5435#(<= (+ main_~a~0 1) main_~m~0)} is VALID [2022-04-27 22:24:09,382 INFO L272 TraceCheckUtils]: 21: Hoare triple {5435#(<= (+ main_~a~0 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:09,382 INFO L290 TraceCheckUtils]: 22: Hoare triple {5418#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {5526#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:09,382 INFO L290 TraceCheckUtils]: 23: Hoare triple {5526#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {5526#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:09,383 INFO L290 TraceCheckUtils]: 24: Hoare triple {5526#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {5526#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:09,383 INFO L290 TraceCheckUtils]: 25: Hoare triple {5526#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {5536#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 |student_version_#in~a|))} is VALID [2022-04-27 22:24:09,384 INFO L290 TraceCheckUtils]: 26: Hoare triple {5536#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,384 INFO L290 TraceCheckUtils]: 27: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,384 INFO L290 TraceCheckUtils]: 28: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,385 INFO L290 TraceCheckUtils]: 29: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,385 INFO L290 TraceCheckUtils]: 30: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,385 INFO L290 TraceCheckUtils]: 31: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:09,386 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} {5435#(<= (+ main_~a~0 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {5419#false} is VALID [2022-04-27 22:24:09,386 INFO L290 TraceCheckUtils]: 33: Hoare triple {5419#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {5419#false} is VALID [2022-04-27 22:24:09,386 INFO L272 TraceCheckUtils]: 34: Hoare triple {5419#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {5419#false} is VALID [2022-04-27 22:24:09,386 INFO L290 TraceCheckUtils]: 35: Hoare triple {5419#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5419#false} is VALID [2022-04-27 22:24:09,386 INFO L290 TraceCheckUtils]: 36: Hoare triple {5419#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {5419#false} is VALID [2022-04-27 22:24:09,386 INFO L290 TraceCheckUtils]: 37: Hoare triple {5419#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5419#false} is VALID [2022-04-27 22:24:09,386 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:09,387 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:10,001 INFO L290 TraceCheckUtils]: 37: Hoare triple {5419#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5419#false} is VALID [2022-04-27 22:24:10,002 INFO L290 TraceCheckUtils]: 36: Hoare triple {5419#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {5419#false} is VALID [2022-04-27 22:24:10,002 INFO L290 TraceCheckUtils]: 35: Hoare triple {5419#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {5419#false} is VALID [2022-04-27 22:24:10,002 INFO L272 TraceCheckUtils]: 34: Hoare triple {5419#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {5419#false} is VALID [2022-04-27 22:24:10,002 INFO L290 TraceCheckUtils]: 33: Hoare triple {5419#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {5419#false} is VALID [2022-04-27 22:24:10,003 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} {5435#(<= (+ main_~a~0 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {5419#false} is VALID [2022-04-27 22:24:10,003 INFO L290 TraceCheckUtils]: 31: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:10,003 INFO L290 TraceCheckUtils]: 30: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:10,004 INFO L290 TraceCheckUtils]: 29: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:10,004 INFO L290 TraceCheckUtils]: 28: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:10,004 INFO L290 TraceCheckUtils]: 27: Hoare triple {5454#(<= |student_version_#in~m| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:10,005 INFO L290 TraceCheckUtils]: 26: Hoare triple {5609#(or (<= |student_version_#in~m| |student_version_#in~a|) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {5454#(<= |student_version_#in~m| |student_version_#in~a|)} is VALID [2022-04-27 22:24:10,005 INFO L290 TraceCheckUtils]: 25: Hoare triple {5613#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {5609#(or (<= |student_version_#in~m| |student_version_#in~a|) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:24:10,005 INFO L290 TraceCheckUtils]: 24: Hoare triple {5613#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {5613#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| |student_version_#in~a|))} is VALID [2022-04-27 22:24:10,006 INFO L290 TraceCheckUtils]: 23: Hoare triple {5613#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {5613#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| |student_version_#in~a|))} is VALID [2022-04-27 22:24:10,006 INFO L290 TraceCheckUtils]: 22: Hoare triple {5418#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {5613#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| |student_version_#in~a|))} is VALID [2022-04-27 22:24:10,006 INFO L272 TraceCheckUtils]: 21: Hoare triple {5435#(<= (+ main_~a~0 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:10,006 INFO L290 TraceCheckUtils]: 20: Hoare triple {5435#(<= (+ main_~a~0 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {5435#(<= (+ main_~a~0 1) main_~m~0)} is VALID [2022-04-27 22:24:10,007 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} {5418#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {5435#(<= (+ main_~a~0 1) main_~m~0)} is VALID [2022-04-27 22:24:10,007 INFO L290 TraceCheckUtils]: 18: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:10,008 INFO L290 TraceCheckUtils]: 17: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:10,008 INFO L290 TraceCheckUtils]: 16: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:10,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:10,009 INFO L290 TraceCheckUtils]: 14: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:10,009 INFO L290 TraceCheckUtils]: 13: Hoare triple {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:10,009 INFO L290 TraceCheckUtils]: 12: Hoare triple {5653#(or (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5451#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:10,029 INFO L290 TraceCheckUtils]: 11: Hoare triple {5657#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {5653#(or (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:24:10,037 INFO L290 TraceCheckUtils]: 10: Hoare triple {5657#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {5657#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:10,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {5657#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {5657#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:10,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {5418#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {5657#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:10,038 INFO L272 TraceCheckUtils]: 7: Hoare triple {5418#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:10,038 INFO L290 TraceCheckUtils]: 6: Hoare triple {5418#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:10,039 INFO L290 TraceCheckUtils]: 5: Hoare triple {5418#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {5418#true} is VALID [2022-04-27 22:24:10,039 INFO L272 TraceCheckUtils]: 4: Hoare triple {5418#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:10,039 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5418#true} {5418#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:10,039 INFO L290 TraceCheckUtils]: 2: Hoare triple {5418#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:10,039 INFO L290 TraceCheckUtils]: 1: Hoare triple {5418#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {5418#true} is VALID [2022-04-27 22:24:10,039 INFO L272 TraceCheckUtils]: 0: Hoare triple {5418#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5418#true} is VALID [2022-04-27 22:24:10,039 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:10,039 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [89502610] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:10,039 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:10,039 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9, 9] total 19 [2022-04-27 22:24:10,039 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1930059241] [2022-04-27 22:24:10,040 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:10,040 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 38 [2022-04-27 22:24:10,040 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:10,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:10,066 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:10,066 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-27 22:24:10,066 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:10,066 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-27 22:24:10,066 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=288, Unknown=0, NotChecked=0, Total=342 [2022-04-27 22:24:10,066 INFO L87 Difference]: Start difference. First operand 84 states and 104 transitions. Second operand has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:10,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:10,864 INFO L93 Difference]: Finished difference Result 92 states and 111 transitions. [2022-04-27 22:24:10,864 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:24:10,864 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 38 [2022-04-27 22:24:10,864 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:10,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:10,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 65 transitions. [2022-04-27 22:24:10,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:10,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 65 transitions. [2022-04-27 22:24:10,866 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 65 transitions. [2022-04-27 22:24:10,926 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-27 22:24:10,927 INFO L225 Difference]: With dead ends: 92 [2022-04-27 22:24:10,927 INFO L226 Difference]: Without dead ends: 86 [2022-04-27 22:24:10,928 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 69 SyntacticMatches, 3 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 66 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=108, Invalid=594, Unknown=0, NotChecked=0, Total=702 [2022-04-27 22:24:10,928 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 94 mSDsluCounter, 42 mSDsCounter, 0 mSdLazyCounter, 380 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 97 SdHoareTripleChecker+Valid, 80 SdHoareTripleChecker+Invalid, 394 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 380 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:10,928 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [97 Valid, 80 Invalid, 394 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 380 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 22:24:10,928 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-27 22:24:11,029 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 84. [2022-04-27 22:24:11,029 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:11,029 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 22:24:11,030 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 22:24:11,030 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 22:24:11,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:11,031 INFO L93 Difference]: Finished difference Result 86 states and 104 transitions. [2022-04-27 22:24:11,031 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 104 transitions. [2022-04-27 22:24:11,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:11,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:11,032 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) Second operand 86 states. [2022-04-27 22:24:11,032 INFO L87 Difference]: Start difference. First operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) Second operand 86 states. [2022-04-27 22:24:11,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:11,033 INFO L93 Difference]: Finished difference Result 86 states and 104 transitions. [2022-04-27 22:24:11,033 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 104 transitions. [2022-04-27 22:24:11,033 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:11,033 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:11,033 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:11,033 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:11,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 69 states have (on average 1.2608695652173914) internal successors, (87), 73 states have internal predecessors, (87), 7 states have call successors, (7), 5 states have call predecessors, (7), 7 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 22:24:11,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 102 transitions. [2022-04-27 22:24:11,035 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 102 transitions. Word has length 38 [2022-04-27 22:24:11,035 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:11,035 INFO L495 AbstractCegarLoop]: Abstraction has 84 states and 102 transitions. [2022-04-27 22:24:11,035 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.736842105263158) internal successors, (52), 18 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:11,035 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 102 transitions. [2022-04-27 22:24:11,036 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 22:24:11,036 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:11,036 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:11,053 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-27 22:24:11,252 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-27 22:24:11,252 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:11,253 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:11,253 INFO L85 PathProgramCache]: Analyzing trace with hash -1615543558, now seen corresponding path program 6 times [2022-04-27 22:24:11,253 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:11,253 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1500969555] [2022-04-27 22:24:11,253 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:11,253 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:11,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:11,300 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:11,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:11,303 INFO L290 TraceCheckUtils]: 0: Hoare triple {6159#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6129#true} is VALID [2022-04-27 22:24:11,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {6129#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,304 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {6129#true} {6129#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,304 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:11,308 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:11,357 INFO L290 TraceCheckUtils]: 0: Hoare triple {6129#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6160#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:11,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {6160#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6161#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:11,362 INFO L290 TraceCheckUtils]: 2: Hoare triple {6161#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6162#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| correct_version_~a))} is VALID [2022-04-27 22:24:11,362 INFO L290 TraceCheckUtils]: 3: Hoare triple {6162#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,362 INFO L290 TraceCheckUtils]: 4: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,362 INFO L290 TraceCheckUtils]: 5: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,363 INFO L290 TraceCheckUtils]: 6: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,363 INFO L290 TraceCheckUtils]: 7: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,363 INFO L290 TraceCheckUtils]: 8: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,364 INFO L290 TraceCheckUtils]: 9: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,364 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} {6129#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6145#(<= main_~n~0 main_~a~0)} is VALID [2022-04-27 22:24:11,364 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 22:24:11,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:11,444 INFO L290 TraceCheckUtils]: 0: Hoare triple {6129#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6164#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:11,445 INFO L290 TraceCheckUtils]: 1: Hoare triple {6164#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6165#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:11,445 INFO L290 TraceCheckUtils]: 2: Hoare triple {6165#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6166#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:11,445 INFO L290 TraceCheckUtils]: 3: Hoare triple {6166#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6167#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) |student_version_#in~n|))} is VALID [2022-04-27 22:24:11,446 INFO L290 TraceCheckUtils]: 4: Hoare triple {6167#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,446 INFO L290 TraceCheckUtils]: 5: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,446 INFO L290 TraceCheckUtils]: 6: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,446 INFO L290 TraceCheckUtils]: 7: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,447 INFO L290 TraceCheckUtils]: 8: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,447 INFO L290 TraceCheckUtils]: 9: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,447 INFO L290 TraceCheckUtils]: 10: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,447 INFO L290 TraceCheckUtils]: 11: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,448 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} {6145#(<= main_~n~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6130#false} is VALID [2022-04-27 22:24:11,448 INFO L272 TraceCheckUtils]: 0: Hoare triple {6129#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6159#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:11,448 INFO L290 TraceCheckUtils]: 1: Hoare triple {6159#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6129#true} is VALID [2022-04-27 22:24:11,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {6129#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,448 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6129#true} {6129#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,449 INFO L272 TraceCheckUtils]: 4: Hoare triple {6129#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,449 INFO L290 TraceCheckUtils]: 5: Hoare triple {6129#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:11,449 INFO L290 TraceCheckUtils]: 6: Hoare triple {6129#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,449 INFO L272 TraceCheckUtils]: 7: Hoare triple {6129#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:11,449 INFO L290 TraceCheckUtils]: 8: Hoare triple {6129#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6160#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:11,449 INFO L290 TraceCheckUtils]: 9: Hoare triple {6160#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6161#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:11,450 INFO L290 TraceCheckUtils]: 10: Hoare triple {6161#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6162#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| correct_version_~a))} is VALID [2022-04-27 22:24:11,450 INFO L290 TraceCheckUtils]: 11: Hoare triple {6162#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,450 INFO L290 TraceCheckUtils]: 12: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,450 INFO L290 TraceCheckUtils]: 13: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,451 INFO L290 TraceCheckUtils]: 14: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,451 INFO L290 TraceCheckUtils]: 15: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,451 INFO L290 TraceCheckUtils]: 16: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,451 INFO L290 TraceCheckUtils]: 17: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,452 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} {6129#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6145#(<= main_~n~0 main_~a~0)} is VALID [2022-04-27 22:24:11,452 INFO L290 TraceCheckUtils]: 19: Hoare triple {6145#(<= main_~n~0 main_~a~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {6145#(<= main_~n~0 main_~a~0)} is VALID [2022-04-27 22:24:11,452 INFO L272 TraceCheckUtils]: 20: Hoare triple {6145#(<= main_~n~0 main_~a~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:11,454 INFO L290 TraceCheckUtils]: 21: Hoare triple {6129#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6164#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:11,456 INFO L290 TraceCheckUtils]: 22: Hoare triple {6164#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6165#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:11,456 INFO L290 TraceCheckUtils]: 23: Hoare triple {6165#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6166#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:11,456 INFO L290 TraceCheckUtils]: 24: Hoare triple {6166#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6167#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) |student_version_#in~n|))} is VALID [2022-04-27 22:24:11,457 INFO L290 TraceCheckUtils]: 25: Hoare triple {6167#(and (= |student_version_#in~a| student_version_~a) (<= (+ student_version_~a 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,457 INFO L290 TraceCheckUtils]: 26: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,457 INFO L290 TraceCheckUtils]: 28: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,457 INFO L290 TraceCheckUtils]: 29: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,458 INFO L290 TraceCheckUtils]: 30: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,458 INFO L290 TraceCheckUtils]: 31: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,458 INFO L290 TraceCheckUtils]: 32: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,459 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} {6145#(<= main_~n~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6130#false} is VALID [2022-04-27 22:24:11,459 INFO L290 TraceCheckUtils]: 34: Hoare triple {6130#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {6130#false} is VALID [2022-04-27 22:24:11,459 INFO L272 TraceCheckUtils]: 35: Hoare triple {6130#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {6130#false} is VALID [2022-04-27 22:24:11,459 INFO L290 TraceCheckUtils]: 36: Hoare triple {6130#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6130#false} is VALID [2022-04-27 22:24:11,459 INFO L290 TraceCheckUtils]: 37: Hoare triple {6130#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {6130#false} is VALID [2022-04-27 22:24:11,459 INFO L290 TraceCheckUtils]: 38: Hoare triple {6130#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6130#false} is VALID [2022-04-27 22:24:11,459 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:11,459 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:11,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1500969555] [2022-04-27 22:24:11,460 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1500969555] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:11,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1787291354] [2022-04-27 22:24:11,460 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:24:11,460 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:11,460 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:11,461 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-27 22:24:11,475 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-27 22:24:11,517 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 2 check-sat command(s) [2022-04-27 22:24:11,518 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:11,518 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 22:24:11,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:11,531 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:11,704 INFO L272 TraceCheckUtils]: 0: Hoare triple {6129#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,704 INFO L290 TraceCheckUtils]: 1: Hoare triple {6129#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6129#true} is VALID [2022-04-27 22:24:11,704 INFO L290 TraceCheckUtils]: 2: Hoare triple {6129#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,704 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6129#true} {6129#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,705 INFO L272 TraceCheckUtils]: 4: Hoare triple {6129#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,705 INFO L290 TraceCheckUtils]: 5: Hoare triple {6129#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:11,705 INFO L290 TraceCheckUtils]: 6: Hoare triple {6129#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:11,705 INFO L272 TraceCheckUtils]: 7: Hoare triple {6129#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:11,705 INFO L290 TraceCheckUtils]: 8: Hoare triple {6129#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6196#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:11,706 INFO L290 TraceCheckUtils]: 9: Hoare triple {6196#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6200#(and (<= correct_version_~b~0 |correct_version_#in~a|) (<= |correct_version_#in~n| correct_version_~n))} is VALID [2022-04-27 22:24:11,706 INFO L290 TraceCheckUtils]: 10: Hoare triple {6200#(and (<= correct_version_~b~0 |correct_version_#in~a|) (<= |correct_version_#in~n| correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,706 INFO L290 TraceCheckUtils]: 11: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,706 INFO L290 TraceCheckUtils]: 12: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,706 INFO L290 TraceCheckUtils]: 13: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,707 INFO L290 TraceCheckUtils]: 14: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,707 INFO L290 TraceCheckUtils]: 15: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,707 INFO L290 TraceCheckUtils]: 16: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,707 INFO L290 TraceCheckUtils]: 17: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:11,708 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} {6129#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6145#(<= main_~n~0 main_~a~0)} is VALID [2022-04-27 22:24:11,708 INFO L290 TraceCheckUtils]: 19: Hoare triple {6145#(<= main_~n~0 main_~a~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {6145#(<= main_~n~0 main_~a~0)} is VALID [2022-04-27 22:24:11,708 INFO L272 TraceCheckUtils]: 20: Hoare triple {6145#(<= main_~n~0 main_~a~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:11,708 INFO L290 TraceCheckUtils]: 21: Hoare triple {6129#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6237#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:24:11,709 INFO L290 TraceCheckUtils]: 22: Hoare triple {6237#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6241#(and (<= student_version_~n |student_version_#in~n|) (<= |student_version_#in~a| student_version_~b~1))} is VALID [2022-04-27 22:24:11,709 INFO L290 TraceCheckUtils]: 23: Hoare triple {6241#(and (<= student_version_~n |student_version_#in~n|) (<= |student_version_#in~a| student_version_~b~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,709 INFO L290 TraceCheckUtils]: 24: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,710 INFO L290 TraceCheckUtils]: 25: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,710 INFO L290 TraceCheckUtils]: 26: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,710 INFO L290 TraceCheckUtils]: 27: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,710 INFO L290 TraceCheckUtils]: 28: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,710 INFO L290 TraceCheckUtils]: 29: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,711 INFO L290 TraceCheckUtils]: 30: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,711 INFO L290 TraceCheckUtils]: 31: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,713 INFO L290 TraceCheckUtils]: 32: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:11,714 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} {6145#(<= main_~n~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6130#false} is VALID [2022-04-27 22:24:11,714 INFO L290 TraceCheckUtils]: 34: Hoare triple {6130#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {6130#false} is VALID [2022-04-27 22:24:11,714 INFO L272 TraceCheckUtils]: 35: Hoare triple {6130#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {6130#false} is VALID [2022-04-27 22:24:11,714 INFO L290 TraceCheckUtils]: 36: Hoare triple {6130#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6130#false} is VALID [2022-04-27 22:24:11,714 INFO L290 TraceCheckUtils]: 37: Hoare triple {6130#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {6130#false} is VALID [2022-04-27 22:24:11,714 INFO L290 TraceCheckUtils]: 38: Hoare triple {6130#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6130#false} is VALID [2022-04-27 22:24:11,715 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:24:11,715 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:12,337 INFO L290 TraceCheckUtils]: 38: Hoare triple {6130#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6130#false} is VALID [2022-04-27 22:24:12,338 INFO L290 TraceCheckUtils]: 37: Hoare triple {6130#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {6130#false} is VALID [2022-04-27 22:24:12,338 INFO L290 TraceCheckUtils]: 36: Hoare triple {6130#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6130#false} is VALID [2022-04-27 22:24:12,338 INFO L272 TraceCheckUtils]: 35: Hoare triple {6130#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {6130#false} is VALID [2022-04-27 22:24:12,338 INFO L290 TraceCheckUtils]: 34: Hoare triple {6130#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {6130#false} is VALID [2022-04-27 22:24:12,339 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} {6145#(<= main_~n~0 main_~a~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6130#false} is VALID [2022-04-27 22:24:12,339 INFO L290 TraceCheckUtils]: 32: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,339 INFO L290 TraceCheckUtils]: 31: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,339 INFO L290 TraceCheckUtils]: 30: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,340 INFO L290 TraceCheckUtils]: 29: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,340 INFO L290 TraceCheckUtils]: 28: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,340 INFO L290 TraceCheckUtils]: 27: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,341 INFO L290 TraceCheckUtils]: 26: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,341 INFO L290 TraceCheckUtils]: 25: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,341 INFO L290 TraceCheckUtils]: 24: Hoare triple {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,342 INFO L290 TraceCheckUtils]: 23: Hoare triple {6338#(or (not (< student_version_~b~1 student_version_~n)) (<= (+ |student_version_#in~a| 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6168#(<= (+ |student_version_#in~a| 1) |student_version_#in~n|)} is VALID [2022-04-27 22:24:12,342 INFO L290 TraceCheckUtils]: 22: Hoare triple {6342#(or (<= student_version_~n (+ student_version_~b~1 student_version_~a)) (<= (+ |student_version_#in~a| 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6338#(or (not (< student_version_~b~1 student_version_~n)) (<= (+ |student_version_#in~a| 1) |student_version_#in~n|))} is VALID [2022-04-27 22:24:12,343 INFO L290 TraceCheckUtils]: 21: Hoare triple {6129#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6342#(or (<= student_version_~n (+ student_version_~b~1 student_version_~a)) (<= (+ |student_version_#in~a| 1) |student_version_#in~n|))} is VALID [2022-04-27 22:24:12,343 INFO L272 TraceCheckUtils]: 20: Hoare triple {6145#(<= main_~n~0 main_~a~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:12,343 INFO L290 TraceCheckUtils]: 19: Hoare triple {6145#(<= main_~n~0 main_~a~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {6145#(<= main_~n~0 main_~a~0)} is VALID [2022-04-27 22:24:12,344 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} {6129#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6145#(<= main_~n~0 main_~a~0)} is VALID [2022-04-27 22:24:12,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,344 INFO L290 TraceCheckUtils]: 16: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,345 INFO L290 TraceCheckUtils]: 15: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,345 INFO L290 TraceCheckUtils]: 14: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,345 INFO L290 TraceCheckUtils]: 13: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,346 INFO L290 TraceCheckUtils]: 12: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,346 INFO L290 TraceCheckUtils]: 11: Hoare triple {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,346 INFO L290 TraceCheckUtils]: 10: Hoare triple {6379#(or (<= |correct_version_#in~n| |correct_version_#in~a|) (< correct_version_~b~0 correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6163#(<= |correct_version_#in~n| |correct_version_#in~a|)} is VALID [2022-04-27 22:24:12,347 INFO L290 TraceCheckUtils]: 9: Hoare triple {6383#(or (<= |correct_version_#in~n| |correct_version_#in~a|) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6379#(or (<= |correct_version_#in~n| |correct_version_#in~a|) (< correct_version_~b~0 correct_version_~n))} is VALID [2022-04-27 22:24:12,347 INFO L290 TraceCheckUtils]: 8: Hoare triple {6129#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6383#(or (<= |correct_version_#in~n| |correct_version_#in~a|) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} is VALID [2022-04-27 22:24:12,347 INFO L272 TraceCheckUtils]: 7: Hoare triple {6129#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:12,347 INFO L290 TraceCheckUtils]: 6: Hoare triple {6129#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:12,348 INFO L290 TraceCheckUtils]: 5: Hoare triple {6129#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {6129#true} is VALID [2022-04-27 22:24:12,348 INFO L272 TraceCheckUtils]: 4: Hoare triple {6129#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:12,348 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6129#true} {6129#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:12,348 INFO L290 TraceCheckUtils]: 2: Hoare triple {6129#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:12,348 INFO L290 TraceCheckUtils]: 1: Hoare triple {6129#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6129#true} is VALID [2022-04-27 22:24:12,348 INFO L272 TraceCheckUtils]: 0: Hoare triple {6129#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6129#true} is VALID [2022-04-27 22:24:12,348 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:24:12,348 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1787291354] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:12,348 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:12,348 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9, 9] total 21 [2022-04-27 22:24:12,348 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [961528890] [2022-04-27 22:24:12,349 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:12,349 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-04-27 22:24:12,349 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:12,349 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:12,383 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-27 22:24:12,384 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-27 22:24:12,384 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:12,384 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-27 22:24:12,384 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=355, Unknown=0, NotChecked=0, Total=420 [2022-04-27 22:24:12,384 INFO L87 Difference]: Start difference. First operand 84 states and 102 transitions. Second operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:13,340 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:13,341 INFO L93 Difference]: Finished difference Result 108 states and 128 transitions. [2022-04-27 22:24:13,341 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:24:13,341 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-04-27 22:24:13,342 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:13,343 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:13,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 70 transitions. [2022-04-27 22:24:13,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:13,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 70 transitions. [2022-04-27 22:24:13,346 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 70 transitions. [2022-04-27 22:24:13,398 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:13,400 INFO L225 Difference]: With dead ends: 108 [2022-04-27 22:24:13,400 INFO L226 Difference]: Without dead ends: 94 [2022-04-27 22:24:13,400 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 72 SyntacticMatches, 2 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 82 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=124, Invalid=688, Unknown=0, NotChecked=0, Total=812 [2022-04-27 22:24:13,401 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 94 mSDsluCounter, 72 mSDsCounter, 0 mSdLazyCounter, 592 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 97 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 607 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 592 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:13,401 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [97 Valid, 109 Invalid, 607 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 592 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-27 22:24:13,401 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-04-27 22:24:13,522 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 89. [2022-04-27 22:24:13,522 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:13,522 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 89 states, 71 states have (on average 1.2394366197183098) internal successors, (88), 77 states have internal predecessors, (88), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (11), 6 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 22:24:13,523 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 89 states, 71 states have (on average 1.2394366197183098) internal successors, (88), 77 states have internal predecessors, (88), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (11), 6 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 22:24:13,523 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 89 states, 71 states have (on average 1.2394366197183098) internal successors, (88), 77 states have internal predecessors, (88), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (11), 6 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 22:24:13,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:13,525 INFO L93 Difference]: Finished difference Result 94 states and 112 transitions. [2022-04-27 22:24:13,525 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 112 transitions. [2022-04-27 22:24:13,525 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:13,525 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:13,526 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 71 states have (on average 1.2394366197183098) internal successors, (88), 77 states have internal predecessors, (88), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (11), 6 states have call predecessors, (11), 6 states have call successors, (11) Second operand 94 states. [2022-04-27 22:24:13,526 INFO L87 Difference]: Start difference. First operand has 89 states, 71 states have (on average 1.2394366197183098) internal successors, (88), 77 states have internal predecessors, (88), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (11), 6 states have call predecessors, (11), 6 states have call successors, (11) Second operand 94 states. [2022-04-27 22:24:13,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:13,528 INFO L93 Difference]: Finished difference Result 94 states and 112 transitions. [2022-04-27 22:24:13,528 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 112 transitions. [2022-04-27 22:24:13,528 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:13,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:13,528 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:13,528 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:13,529 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 71 states have (on average 1.2394366197183098) internal successors, (88), 77 states have internal predecessors, (88), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (11), 6 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 22:24:13,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 107 transitions. [2022-04-27 22:24:13,530 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 107 transitions. Word has length 39 [2022-04-27 22:24:13,531 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:13,531 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 107 transitions. [2022-04-27 22:24:13,531 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:13,531 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 107 transitions. [2022-04-27 22:24:13,531 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 22:24:13,532 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:13,532 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:13,552 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-27 22:24:13,747 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-27 22:24:13,747 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:13,748 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:13,748 INFO L85 PathProgramCache]: Analyzing trace with hash -580280884, now seen corresponding path program 7 times [2022-04-27 22:24:13,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:13,748 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [423243951] [2022-04-27 22:24:13,748 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:13,748 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:13,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:13,829 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:13,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:13,832 INFO L290 TraceCheckUtils]: 0: Hoare triple {6922#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6887#true} is VALID [2022-04-27 22:24:13,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {6887#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:13,833 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {6887#true} {6887#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:13,833 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:13,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:13,957 INFO L290 TraceCheckUtils]: 0: Hoare triple {6887#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:13,957 INFO L290 TraceCheckUtils]: 1: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:13,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:13,958 INFO L290 TraceCheckUtils]: 3: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:13,959 INFO L290 TraceCheckUtils]: 4: Hoare triple {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:13,959 INFO L290 TraceCheckUtils]: 5: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:13,960 INFO L290 TraceCheckUtils]: 6: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6926#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:24:13,960 INFO L290 TraceCheckUtils]: 7: Hoare triple {6926#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:13,961 INFO L290 TraceCheckUtils]: 8: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:13,961 INFO L290 TraceCheckUtils]: 9: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:13,961 INFO L290 TraceCheckUtils]: 10: Hoare triple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:13,962 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {6887#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6904#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:13,962 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 22:24:13,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:14,079 INFO L290 TraceCheckUtils]: 0: Hoare triple {6887#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,080 INFO L290 TraceCheckUtils]: 2: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,080 INFO L290 TraceCheckUtils]: 3: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:14,081 INFO L290 TraceCheckUtils]: 4: Hoare triple {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:14,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:14,082 INFO L290 TraceCheckUtils]: 6: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6932#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} is VALID [2022-04-27 22:24:14,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {6932#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:14,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:14,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:14,083 INFO L290 TraceCheckUtils]: 10: Hoare triple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:14,084 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6918#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:14,084 INFO L272 TraceCheckUtils]: 0: Hoare triple {6887#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6922#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:14,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {6922#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6887#true} is VALID [2022-04-27 22:24:14,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {6887#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,085 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6887#true} {6887#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,085 INFO L272 TraceCheckUtils]: 4: Hoare triple {6887#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,085 INFO L290 TraceCheckUtils]: 5: Hoare triple {6887#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:14,085 INFO L290 TraceCheckUtils]: 6: Hoare triple {6887#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,085 INFO L272 TraceCheckUtils]: 7: Hoare triple {6887#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:14,085 INFO L290 TraceCheckUtils]: 8: Hoare triple {6887#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:14,086 INFO L290 TraceCheckUtils]: 9: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:14,086 INFO L290 TraceCheckUtils]: 10: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:14,087 INFO L290 TraceCheckUtils]: 11: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:14,087 INFO L290 TraceCheckUtils]: 12: Hoare triple {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:14,087 INFO L290 TraceCheckUtils]: 13: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:14,088 INFO L290 TraceCheckUtils]: 14: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6926#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:24:14,088 INFO L290 TraceCheckUtils]: 15: Hoare triple {6926#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:14,089 INFO L290 TraceCheckUtils]: 16: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:14,089 INFO L290 TraceCheckUtils]: 17: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:14,089 INFO L290 TraceCheckUtils]: 18: Hoare triple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:14,090 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {6887#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6904#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:14,090 INFO L290 TraceCheckUtils]: 20: Hoare triple {6904#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} is VALID [2022-04-27 22:24:14,091 INFO L272 TraceCheckUtils]: 21: Hoare triple {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:14,091 INFO L290 TraceCheckUtils]: 22: Hoare triple {6887#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,091 INFO L290 TraceCheckUtils]: 23: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,092 INFO L290 TraceCheckUtils]: 24: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,092 INFO L290 TraceCheckUtils]: 25: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:14,093 INFO L290 TraceCheckUtils]: 26: Hoare triple {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:14,093 INFO L290 TraceCheckUtils]: 27: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:14,093 INFO L290 TraceCheckUtils]: 28: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6932#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} is VALID [2022-04-27 22:24:14,094 INFO L290 TraceCheckUtils]: 29: Hoare triple {6932#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:14,094 INFO L290 TraceCheckUtils]: 30: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:14,095 INFO L290 TraceCheckUtils]: 31: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:14,095 INFO L290 TraceCheckUtils]: 32: Hoare triple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:14,096 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6918#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:14,096 INFO L290 TraceCheckUtils]: 34: Hoare triple {6918#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {6919#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:14,097 INFO L272 TraceCheckUtils]: 35: Hoare triple {6919#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {6920#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:24:14,097 INFO L290 TraceCheckUtils]: 36: Hoare triple {6920#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {6921#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:24:14,097 INFO L290 TraceCheckUtils]: 37: Hoare triple {6921#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {6888#false} is VALID [2022-04-27 22:24:14,098 INFO L290 TraceCheckUtils]: 38: Hoare triple {6888#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6888#false} is VALID [2022-04-27 22:24:14,098 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:14,098 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:14,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [423243951] [2022-04-27 22:24:14,098 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [423243951] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:14,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [313196311] [2022-04-27 22:24:14,098 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:24:14,098 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:14,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:14,099 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-27 22:24:14,100 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-27 22:24:14,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:14,146 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-27 22:24:14,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:14,155 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:14,668 INFO L272 TraceCheckUtils]: 0: Hoare triple {6887#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {6887#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6887#true} is VALID [2022-04-27 22:24:14,668 INFO L290 TraceCheckUtils]: 2: Hoare triple {6887#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,668 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6887#true} {6887#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,668 INFO L272 TraceCheckUtils]: 4: Hoare triple {6887#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,668 INFO L290 TraceCheckUtils]: 5: Hoare triple {6887#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:14,668 INFO L290 TraceCheckUtils]: 6: Hoare triple {6887#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:14,669 INFO L272 TraceCheckUtils]: 7: Hoare triple {6887#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:14,669 INFO L290 TraceCheckUtils]: 8: Hoare triple {6887#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:14,669 INFO L290 TraceCheckUtils]: 9: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:14,670 INFO L290 TraceCheckUtils]: 10: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:14,670 INFO L290 TraceCheckUtils]: 11: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:14,671 INFO L290 TraceCheckUtils]: 12: Hoare triple {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:14,671 INFO L290 TraceCheckUtils]: 13: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:14,671 INFO L290 TraceCheckUtils]: 14: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6980#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:24:14,672 INFO L290 TraceCheckUtils]: 15: Hoare triple {6980#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:14,672 INFO L290 TraceCheckUtils]: 16: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:14,673 INFO L290 TraceCheckUtils]: 17: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:14,673 INFO L290 TraceCheckUtils]: 18: Hoare triple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:14,674 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {6887#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6904#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:14,674 INFO L290 TraceCheckUtils]: 20: Hoare triple {6904#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} is VALID [2022-04-27 22:24:14,674 INFO L272 TraceCheckUtils]: 21: Hoare triple {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:14,675 INFO L290 TraceCheckUtils]: 22: Hoare triple {6887#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,675 INFO L290 TraceCheckUtils]: 23: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,676 INFO L290 TraceCheckUtils]: 24: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:14,676 INFO L290 TraceCheckUtils]: 25: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:14,676 INFO L290 TraceCheckUtils]: 26: Hoare triple {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:14,677 INFO L290 TraceCheckUtils]: 27: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:14,677 INFO L290 TraceCheckUtils]: 28: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7023#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:14,678 INFO L290 TraceCheckUtils]: 29: Hoare triple {7023#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:14,678 INFO L290 TraceCheckUtils]: 30: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:14,678 INFO L290 TraceCheckUtils]: 31: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:14,679 INFO L290 TraceCheckUtils]: 32: Hoare triple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:14,680 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7039#(and (<= |main_#t~ret9| 2) (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2) (<= 2 |main_#t~ret9|))} is VALID [2022-04-27 22:24:14,680 INFO L290 TraceCheckUtils]: 34: Hoare triple {7039#(and (<= |main_#t~ret9| 2) (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2) (<= 2 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {7043#(and (<= 2 main_~n_stones1~0) (<= 2 main_~n_stones2~0) (<= main_~n_stones1~0 2) (<= main_~n_stones2~0 2))} is VALID [2022-04-27 22:24:14,681 INFO L272 TraceCheckUtils]: 35: Hoare triple {7043#(and (<= 2 main_~n_stones1~0) (<= 2 main_~n_stones2~0) (<= main_~n_stones1~0 2) (<= main_~n_stones2~0 2))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {7047#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:14,681 INFO L290 TraceCheckUtils]: 36: Hoare triple {7047#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {7051#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:14,681 INFO L290 TraceCheckUtils]: 37: Hoare triple {7051#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {6888#false} is VALID [2022-04-27 22:24:14,681 INFO L290 TraceCheckUtils]: 38: Hoare triple {6888#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6888#false} is VALID [2022-04-27 22:24:14,682 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:14,682 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:15,060 INFO L290 TraceCheckUtils]: 38: Hoare triple {6888#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6888#false} is VALID [2022-04-27 22:24:15,061 INFO L290 TraceCheckUtils]: 37: Hoare triple {7051#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {6888#false} is VALID [2022-04-27 22:24:15,061 INFO L290 TraceCheckUtils]: 36: Hoare triple {7047#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {7051#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:15,062 INFO L272 TraceCheckUtils]: 35: Hoare triple {6919#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {7047#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:15,062 INFO L290 TraceCheckUtils]: 34: Hoare triple {6918#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {6919#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:15,063 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6918#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:15,063 INFO L290 TraceCheckUtils]: 32: Hoare triple {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:15,064 INFO L290 TraceCheckUtils]: 31: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {6934#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:15,064 INFO L290 TraceCheckUtils]: 30: Hoare triple {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:15,065 INFO L290 TraceCheckUtils]: 29: Hoare triple {6932#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6933#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:15,065 INFO L290 TraceCheckUtils]: 28: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {6932#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} is VALID [2022-04-27 22:24:15,065 INFO L290 TraceCheckUtils]: 27: Hoare triple {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:15,066 INFO L290 TraceCheckUtils]: 26: Hoare triple {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6931#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:15,066 INFO L290 TraceCheckUtils]: 25: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {6930#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:15,067 INFO L290 TraceCheckUtils]: 24: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:15,067 INFO L290 TraceCheckUtils]: 23: Hoare triple {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:15,067 INFO L290 TraceCheckUtils]: 22: Hoare triple {6887#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {6929#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:15,068 INFO L272 TraceCheckUtils]: 21: Hoare triple {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:15,068 INFO L290 TraceCheckUtils]: 20: Hoare triple {6904#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {6905#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} is VALID [2022-04-27 22:24:15,069 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {6887#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6904#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:15,069 INFO L290 TraceCheckUtils]: 18: Hoare triple {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:15,069 INFO L290 TraceCheckUtils]: 17: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {6928#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:15,070 INFO L290 TraceCheckUtils]: 16: Hoare triple {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:15,070 INFO L290 TraceCheckUtils]: 15: Hoare triple {6926#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6927#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:15,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {6926#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:24:15,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:15,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6925#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:15,072 INFO L290 TraceCheckUtils]: 11: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {6924#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:15,072 INFO L290 TraceCheckUtils]: 10: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:15,073 INFO L290 TraceCheckUtils]: 9: Hoare triple {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:15,073 INFO L290 TraceCheckUtils]: 8: Hoare triple {6887#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {6923#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:15,073 INFO L272 TraceCheckUtils]: 7: Hoare triple {6887#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:15,073 INFO L290 TraceCheckUtils]: 6: Hoare triple {6887#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:15,073 INFO L290 TraceCheckUtils]: 5: Hoare triple {6887#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {6887#true} is VALID [2022-04-27 22:24:15,073 INFO L272 TraceCheckUtils]: 4: Hoare triple {6887#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:15,073 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6887#true} {6887#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:15,074 INFO L290 TraceCheckUtils]: 2: Hoare triple {6887#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:15,074 INFO L290 TraceCheckUtils]: 1: Hoare triple {6887#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {6887#true} is VALID [2022-04-27 22:24:15,074 INFO L272 TraceCheckUtils]: 0: Hoare triple {6887#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6887#true} is VALID [2022-04-27 22:24:15,074 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:15,074 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [313196311] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:15,074 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:15,074 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 20, 20] total 27 [2022-04-27 22:24:15,074 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1178120093] [2022-04-27 22:24:15,074 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:15,075 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 24 states have (on average 1.625) internal successors, (39), 21 states have internal predecessors, (39), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 39 [2022-04-27 22:24:15,075 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:15,075 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 27 states, 24 states have (on average 1.625) internal successors, (39), 21 states have internal predecessors, (39), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:15,098 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-27 22:24:15,098 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-04-27 22:24:15,098 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:15,098 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-04-27 22:24:15,098 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=641, Unknown=0, NotChecked=0, Total=702 [2022-04-27 22:24:15,098 INFO L87 Difference]: Start difference. First operand 89 states and 107 transitions. Second operand has 27 states, 24 states have (on average 1.625) internal successors, (39), 21 states have internal predecessors, (39), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:16,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:16,899 INFO L93 Difference]: Finished difference Result 137 states and 170 transitions. [2022-04-27 22:24:16,899 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-27 22:24:16,899 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 24 states have (on average 1.625) internal successors, (39), 21 states have internal predecessors, (39), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 39 [2022-04-27 22:24:16,899 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:16,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 24 states have (on average 1.625) internal successors, (39), 21 states have internal predecessors, (39), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:16,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 95 transitions. [2022-04-27 22:24:16,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 24 states have (on average 1.625) internal successors, (39), 21 states have internal predecessors, (39), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:16,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 95 transitions. [2022-04-27 22:24:16,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 95 transitions. [2022-04-27 22:24:16,997 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:16,999 INFO L225 Difference]: With dead ends: 137 [2022-04-27 22:24:16,999 INFO L226 Difference]: Without dead ends: 131 [2022-04-27 22:24:17,000 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 72 SyntacticMatches, 5 SemanticMatches, 44 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 292 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=169, Invalid=1901, Unknown=0, NotChecked=0, Total=2070 [2022-04-27 22:24:17,000 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 86 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 1144 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 1177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 1144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:17,000 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [89 Valid, 148 Invalid, 1177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 1144 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-27 22:24:17,001 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-27 22:24:17,153 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 121. [2022-04-27 22:24:17,153 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:17,153 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 121 states, 97 states have (on average 1.2371134020618557) internal successors, (120), 107 states have internal predecessors, (120), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-27 22:24:17,153 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 121 states, 97 states have (on average 1.2371134020618557) internal successors, (120), 107 states have internal predecessors, (120), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-27 22:24:17,153 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 121 states, 97 states have (on average 1.2371134020618557) internal successors, (120), 107 states have internal predecessors, (120), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-27 22:24:17,156 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:17,156 INFO L93 Difference]: Finished difference Result 131 states and 162 transitions. [2022-04-27 22:24:17,156 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 162 transitions. [2022-04-27 22:24:17,157 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:17,157 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:17,157 INFO L74 IsIncluded]: Start isIncluded. First operand has 121 states, 97 states have (on average 1.2371134020618557) internal successors, (120), 107 states have internal predecessors, (120), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) Second operand 131 states. [2022-04-27 22:24:17,157 INFO L87 Difference]: Start difference. First operand has 121 states, 97 states have (on average 1.2371134020618557) internal successors, (120), 107 states have internal predecessors, (120), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) Second operand 131 states. [2022-04-27 22:24:17,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:17,161 INFO L93 Difference]: Finished difference Result 131 states and 162 transitions. [2022-04-27 22:24:17,161 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 162 transitions. [2022-04-27 22:24:17,162 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:17,162 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:17,162 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:17,162 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:17,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 121 states, 97 states have (on average 1.2371134020618557) internal successors, (120), 107 states have internal predecessors, (120), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-27 22:24:17,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 149 transitions. [2022-04-27 22:24:17,164 INFO L78 Accepts]: Start accepts. Automaton has 121 states and 149 transitions. Word has length 39 [2022-04-27 22:24:17,164 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:17,164 INFO L495 AbstractCegarLoop]: Abstraction has 121 states and 149 transitions. [2022-04-27 22:24:17,164 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 24 states have (on average 1.625) internal successors, (39), 21 states have internal predecessors, (39), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:17,164 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 149 transitions. [2022-04-27 22:24:17,165 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 22:24:17,165 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:17,165 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:17,181 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-27 22:24:17,379 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:17,379 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:17,380 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:17,380 INFO L85 PathProgramCache]: Analyzing trace with hash 859850767, now seen corresponding path program 8 times [2022-04-27 22:24:17,380 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:17,380 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1088175914] [2022-04-27 22:24:17,380 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:17,380 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:17,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:17,417 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:17,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:17,421 INFO L290 TraceCheckUtils]: 0: Hoare triple {7858#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {7828#true} is VALID [2022-04-27 22:24:17,421 INFO L290 TraceCheckUtils]: 1: Hoare triple {7828#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,421 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {7828#true} {7828#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,421 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:17,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:17,496 INFO L290 TraceCheckUtils]: 0: Hoare triple {7828#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {7859#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,497 INFO L290 TraceCheckUtils]: 1: Hoare triple {7859#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {7860#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,497 INFO L290 TraceCheckUtils]: 2: Hoare triple {7860#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {7861#(and (<= (+ correct_version_~a 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,498 INFO L290 TraceCheckUtils]: 3: Hoare triple {7861#(and (<= (+ correct_version_~a 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {7862#(and (<= (+ correct_version_~a 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,498 INFO L290 TraceCheckUtils]: 4: Hoare triple {7862#(and (<= (+ correct_version_~a 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,499 INFO L290 TraceCheckUtils]: 5: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,499 INFO L290 TraceCheckUtils]: 6: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,499 INFO L290 TraceCheckUtils]: 7: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,500 INFO L290 TraceCheckUtils]: 8: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,500 INFO L290 TraceCheckUtils]: 9: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,500 INFO L290 TraceCheckUtils]: 10: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,501 INFO L290 TraceCheckUtils]: 11: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,501 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} {7828#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {7846#(<= (+ main_~a~0 1) main_~n~0)} is VALID [2022-04-27 22:24:17,502 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:24:17,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:17,562 INFO L290 TraceCheckUtils]: 0: Hoare triple {7828#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {7864#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:17,563 INFO L290 TraceCheckUtils]: 1: Hoare triple {7864#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {7865#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:17,563 INFO L290 TraceCheckUtils]: 2: Hoare triple {7865#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {7866#(and (<= |student_version_#in~n| student_version_~a) (= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:17,564 INFO L290 TraceCheckUtils]: 3: Hoare triple {7866#(and (<= |student_version_#in~n| student_version_~a) (= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,564 INFO L290 TraceCheckUtils]: 4: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,564 INFO L290 TraceCheckUtils]: 5: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,564 INFO L290 TraceCheckUtils]: 6: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,566 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} {7846#(<= (+ main_~a~0 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7829#false} is VALID [2022-04-27 22:24:17,567 INFO L272 TraceCheckUtils]: 0: Hoare triple {7828#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7858#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:17,567 INFO L290 TraceCheckUtils]: 1: Hoare triple {7858#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {7828#true} is VALID [2022-04-27 22:24:17,567 INFO L290 TraceCheckUtils]: 2: Hoare triple {7828#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,567 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7828#true} {7828#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,567 INFO L272 TraceCheckUtils]: 4: Hoare triple {7828#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,567 INFO L290 TraceCheckUtils]: 5: Hoare triple {7828#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:17,567 INFO L290 TraceCheckUtils]: 6: Hoare triple {7828#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,567 INFO L272 TraceCheckUtils]: 7: Hoare triple {7828#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:17,568 INFO L290 TraceCheckUtils]: 8: Hoare triple {7828#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {7859#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,568 INFO L290 TraceCheckUtils]: 9: Hoare triple {7859#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {7860#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,569 INFO L290 TraceCheckUtils]: 10: Hoare triple {7860#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {7861#(and (<= (+ correct_version_~a 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,569 INFO L290 TraceCheckUtils]: 11: Hoare triple {7861#(and (<= (+ correct_version_~a 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {7862#(and (<= (+ correct_version_~a 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,570 INFO L290 TraceCheckUtils]: 12: Hoare triple {7862#(and (<= (+ correct_version_~a 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,570 INFO L290 TraceCheckUtils]: 13: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,570 INFO L290 TraceCheckUtils]: 14: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,571 INFO L290 TraceCheckUtils]: 15: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,571 INFO L290 TraceCheckUtils]: 16: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,571 INFO L290 TraceCheckUtils]: 17: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,572 INFO L290 TraceCheckUtils]: 18: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,572 INFO L290 TraceCheckUtils]: 19: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,573 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} {7828#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {7846#(<= (+ main_~a~0 1) main_~n~0)} is VALID [2022-04-27 22:24:17,574 INFO L290 TraceCheckUtils]: 21: Hoare triple {7846#(<= (+ main_~a~0 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {7846#(<= (+ main_~a~0 1) main_~n~0)} is VALID [2022-04-27 22:24:17,574 INFO L272 TraceCheckUtils]: 22: Hoare triple {7846#(<= (+ main_~a~0 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:17,574 INFO L290 TraceCheckUtils]: 23: Hoare triple {7828#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {7864#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:17,575 INFO L290 TraceCheckUtils]: 24: Hoare triple {7864#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {7865#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:24:17,576 INFO L290 TraceCheckUtils]: 25: Hoare triple {7865#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {7866#(and (<= |student_version_#in~n| student_version_~a) (= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:17,576 INFO L290 TraceCheckUtils]: 26: Hoare triple {7866#(and (<= |student_version_#in~n| student_version_~a) (= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,576 INFO L290 TraceCheckUtils]: 27: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,577 INFO L290 TraceCheckUtils]: 28: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,577 INFO L290 TraceCheckUtils]: 29: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,578 INFO L290 TraceCheckUtils]: 30: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,578 INFO L290 TraceCheckUtils]: 31: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,578 INFO L290 TraceCheckUtils]: 32: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,579 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} {7846#(<= (+ main_~a~0 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7829#false} is VALID [2022-04-27 22:24:17,580 INFO L290 TraceCheckUtils]: 34: Hoare triple {7829#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {7829#false} is VALID [2022-04-27 22:24:17,580 INFO L272 TraceCheckUtils]: 35: Hoare triple {7829#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {7829#false} is VALID [2022-04-27 22:24:17,580 INFO L290 TraceCheckUtils]: 36: Hoare triple {7829#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {7829#false} is VALID [2022-04-27 22:24:17,580 INFO L290 TraceCheckUtils]: 37: Hoare triple {7829#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {7829#false} is VALID [2022-04-27 22:24:17,580 INFO L290 TraceCheckUtils]: 38: Hoare triple {7829#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7829#false} is VALID [2022-04-27 22:24:17,580 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:17,580 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:17,580 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1088175914] [2022-04-27 22:24:17,581 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1088175914] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:17,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1143140534] [2022-04-27 22:24:17,581 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:24:17,581 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:17,581 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:17,582 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-27 22:24:17,583 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-27 22:24:17,643 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:24:17,643 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:17,644 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 22:24:17,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:17,667 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:17,938 INFO L272 TraceCheckUtils]: 0: Hoare triple {7828#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {7828#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {7828#true} is VALID [2022-04-27 22:24:17,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {7828#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7828#true} {7828#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,938 INFO L272 TraceCheckUtils]: 4: Hoare triple {7828#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,938 INFO L290 TraceCheckUtils]: 5: Hoare triple {7828#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:17,938 INFO L290 TraceCheckUtils]: 6: Hoare triple {7828#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:17,938 INFO L272 TraceCheckUtils]: 7: Hoare triple {7828#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:17,939 INFO L290 TraceCheckUtils]: 8: Hoare triple {7828#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {7895#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:17,939 INFO L290 TraceCheckUtils]: 9: Hoare triple {7895#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {7899#(and (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~b~0))} is VALID [2022-04-27 22:24:17,940 INFO L290 TraceCheckUtils]: 10: Hoare triple {7899#(and (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~b~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,940 INFO L290 TraceCheckUtils]: 11: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,940 INFO L290 TraceCheckUtils]: 12: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,941 INFO L290 TraceCheckUtils]: 13: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,941 INFO L290 TraceCheckUtils]: 14: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,941 INFO L290 TraceCheckUtils]: 15: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,942 INFO L290 TraceCheckUtils]: 16: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,942 INFO L290 TraceCheckUtils]: 17: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,942 INFO L290 TraceCheckUtils]: 18: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,942 INFO L290 TraceCheckUtils]: 19: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:17,943 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} {7828#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {7846#(<= (+ main_~a~0 1) main_~n~0)} is VALID [2022-04-27 22:24:17,943 INFO L290 TraceCheckUtils]: 21: Hoare triple {7846#(<= (+ main_~a~0 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {7846#(<= (+ main_~a~0 1) main_~n~0)} is VALID [2022-04-27 22:24:17,944 INFO L272 TraceCheckUtils]: 22: Hoare triple {7846#(<= (+ main_~a~0 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:17,944 INFO L290 TraceCheckUtils]: 23: Hoare triple {7828#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {7942#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:17,945 INFO L290 TraceCheckUtils]: 24: Hoare triple {7942#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {7946#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 |student_version_#in~a|))} is VALID [2022-04-27 22:24:17,945 INFO L290 TraceCheckUtils]: 25: Hoare triple {7946#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,945 INFO L290 TraceCheckUtils]: 26: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,946 INFO L290 TraceCheckUtils]: 27: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,946 INFO L290 TraceCheckUtils]: 28: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,946 INFO L290 TraceCheckUtils]: 29: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,946 INFO L290 TraceCheckUtils]: 30: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,947 INFO L290 TraceCheckUtils]: 31: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,947 INFO L290 TraceCheckUtils]: 32: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:17,948 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} {7846#(<= (+ main_~a~0 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7829#false} is VALID [2022-04-27 22:24:17,948 INFO L290 TraceCheckUtils]: 34: Hoare triple {7829#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {7829#false} is VALID [2022-04-27 22:24:17,948 INFO L272 TraceCheckUtils]: 35: Hoare triple {7829#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {7829#false} is VALID [2022-04-27 22:24:17,948 INFO L290 TraceCheckUtils]: 36: Hoare triple {7829#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {7829#false} is VALID [2022-04-27 22:24:17,948 INFO L290 TraceCheckUtils]: 37: Hoare triple {7829#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {7829#false} is VALID [2022-04-27 22:24:17,948 INFO L290 TraceCheckUtils]: 38: Hoare triple {7829#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7829#false} is VALID [2022-04-27 22:24:17,948 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:24:17,948 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:18,623 INFO L290 TraceCheckUtils]: 38: Hoare triple {7829#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7829#false} is VALID [2022-04-27 22:24:18,623 INFO L290 TraceCheckUtils]: 37: Hoare triple {7829#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {7829#false} is VALID [2022-04-27 22:24:18,623 INFO L290 TraceCheckUtils]: 36: Hoare triple {7829#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {7829#false} is VALID [2022-04-27 22:24:18,623 INFO L272 TraceCheckUtils]: 35: Hoare triple {7829#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {7829#false} is VALID [2022-04-27 22:24:18,623 INFO L290 TraceCheckUtils]: 34: Hoare triple {7829#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {7829#false} is VALID [2022-04-27 22:24:18,624 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} {7846#(<= (+ main_~a~0 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7829#false} is VALID [2022-04-27 22:24:18,624 INFO L290 TraceCheckUtils]: 32: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,624 INFO L290 TraceCheckUtils]: 31: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,625 INFO L290 TraceCheckUtils]: 30: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,625 INFO L290 TraceCheckUtils]: 29: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,625 INFO L290 TraceCheckUtils]: 28: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,626 INFO L290 TraceCheckUtils]: 27: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,626 INFO L290 TraceCheckUtils]: 26: Hoare triple {7867#(<= |student_version_#in~n| |student_version_#in~a|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,626 INFO L290 TraceCheckUtils]: 25: Hoare triple {8031#(or (<= |student_version_#in~n| |student_version_#in~a|) (< student_version_~b~1 student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {7867#(<= |student_version_#in~n| |student_version_#in~a|)} is VALID [2022-04-27 22:24:18,627 INFO L290 TraceCheckUtils]: 24: Hoare triple {8035#(or (< (+ student_version_~b~1 student_version_~a) student_version_~n) (<= |student_version_#in~n| |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {8031#(or (<= |student_version_#in~n| |student_version_#in~a|) (< student_version_~b~1 student_version_~n))} is VALID [2022-04-27 22:24:18,627 INFO L290 TraceCheckUtils]: 23: Hoare triple {7828#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {8035#(or (< (+ student_version_~b~1 student_version_~a) student_version_~n) (<= |student_version_#in~n| |student_version_#in~a|))} is VALID [2022-04-27 22:24:18,627 INFO L272 TraceCheckUtils]: 22: Hoare triple {7846#(<= (+ main_~a~0 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:18,628 INFO L290 TraceCheckUtils]: 21: Hoare triple {7846#(<= (+ main_~a~0 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {7846#(<= (+ main_~a~0 1) main_~n~0)} is VALID [2022-04-27 22:24:18,628 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} {7828#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {7846#(<= (+ main_~a~0 1) main_~n~0)} is VALID [2022-04-27 22:24:18,629 INFO L290 TraceCheckUtils]: 19: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,629 INFO L290 TraceCheckUtils]: 18: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,629 INFO L290 TraceCheckUtils]: 17: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,629 INFO L290 TraceCheckUtils]: 16: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,630 INFO L290 TraceCheckUtils]: 15: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,630 INFO L290 TraceCheckUtils]: 14: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,630 INFO L290 TraceCheckUtils]: 13: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,631 INFO L290 TraceCheckUtils]: 12: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,631 INFO L290 TraceCheckUtils]: 11: Hoare triple {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,631 INFO L290 TraceCheckUtils]: 10: Hoare triple {8078#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {7863#(<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:24:18,632 INFO L290 TraceCheckUtils]: 9: Hoare triple {8082#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {8078#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:24:18,632 INFO L290 TraceCheckUtils]: 8: Hoare triple {7828#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {8082#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ |correct_version_#in~a| 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:24:18,632 INFO L272 TraceCheckUtils]: 7: Hoare triple {7828#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L290 TraceCheckUtils]: 6: Hoare triple {7828#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L290 TraceCheckUtils]: 5: Hoare triple {7828#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L272 TraceCheckUtils]: 4: Hoare triple {7828#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7828#true} {7828#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {7828#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {7828#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L272 TraceCheckUtils]: 0: Hoare triple {7828#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7828#true} is VALID [2022-04-27 22:24:18,633 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:24:18,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1143140534] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:18,633 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:18,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9, 9] total 21 [2022-04-27 22:24:18,634 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1608406550] [2022-04-27 22:24:18,634 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:18,634 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-04-27 22:24:18,634 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:18,634 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:18,669 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-27 22:24:18,669 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-27 22:24:18,669 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:18,669 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-27 22:24:18,669 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=355, Unknown=0, NotChecked=0, Total=420 [2022-04-27 22:24:18,669 INFO L87 Difference]: Start difference. First operand 121 states and 149 transitions. Second operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:19,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:19,630 INFO L93 Difference]: Finished difference Result 132 states and 159 transitions. [2022-04-27 22:24:19,630 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 22:24:19,630 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 39 [2022-04-27 22:24:19,630 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:19,630 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:19,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 69 transitions. [2022-04-27 22:24:19,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:19,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 69 transitions. [2022-04-27 22:24:19,632 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 69 transitions. [2022-04-27 22:24:19,709 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-27 22:24:19,711 INFO L225 Difference]: With dead ends: 132 [2022-04-27 22:24:19,711 INFO L226 Difference]: Without dead ends: 120 [2022-04-27 22:24:19,712 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 71 SyntacticMatches, 3 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=124, Invalid=688, Unknown=0, NotChecked=0, Total=812 [2022-04-27 22:24:19,712 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 117 mSDsluCounter, 52 mSDsCounter, 0 mSdLazyCounter, 430 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 119 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 445 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 430 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:19,712 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [119 Valid, 91 Invalid, 445 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 430 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-27 22:24:19,712 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 120 states. [2022-04-27 22:24:19,887 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 120 to 118. [2022-04-27 22:24:19,887 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:19,887 INFO L82 GeneralOperation]: Start isEquivalent. First operand 120 states. Second operand has 118 states, 94 states have (on average 1.2340425531914894) internal successors, (116), 104 states have internal predecessors, (116), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (16), 8 states have call predecessors, (16), 8 states have call successors, (16) [2022-04-27 22:24:19,888 INFO L74 IsIncluded]: Start isIncluded. First operand 120 states. Second operand has 118 states, 94 states have (on average 1.2340425531914894) internal successors, (116), 104 states have internal predecessors, (116), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (16), 8 states have call predecessors, (16), 8 states have call successors, (16) [2022-04-27 22:24:19,888 INFO L87 Difference]: Start difference. First operand 120 states. Second operand has 118 states, 94 states have (on average 1.2340425531914894) internal successors, (116), 104 states have internal predecessors, (116), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (16), 8 states have call predecessors, (16), 8 states have call successors, (16) [2022-04-27 22:24:19,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:19,905 INFO L93 Difference]: Finished difference Result 120 states and 144 transitions. [2022-04-27 22:24:19,905 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 144 transitions. [2022-04-27 22:24:19,905 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:19,905 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:19,906 INFO L74 IsIncluded]: Start isIncluded. First operand has 118 states, 94 states have (on average 1.2340425531914894) internal successors, (116), 104 states have internal predecessors, (116), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (16), 8 states have call predecessors, (16), 8 states have call successors, (16) Second operand 120 states. [2022-04-27 22:24:19,906 INFO L87 Difference]: Start difference. First operand has 118 states, 94 states have (on average 1.2340425531914894) internal successors, (116), 104 states have internal predecessors, (116), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (16), 8 states have call predecessors, (16), 8 states have call successors, (16) Second operand 120 states. [2022-04-27 22:24:19,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:19,907 INFO L93 Difference]: Finished difference Result 120 states and 144 transitions. [2022-04-27 22:24:19,907 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 144 transitions. [2022-04-27 22:24:19,908 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:19,908 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:19,908 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:19,908 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:19,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 118 states, 94 states have (on average 1.2340425531914894) internal successors, (116), 104 states have internal predecessors, (116), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (16), 8 states have call predecessors, (16), 8 states have call successors, (16) [2022-04-27 22:24:19,910 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 142 transitions. [2022-04-27 22:24:19,910 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 142 transitions. Word has length 39 [2022-04-27 22:24:19,910 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:19,910 INFO L495 AbstractCegarLoop]: Abstraction has 118 states and 142 transitions. [2022-04-27 22:24:19,910 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:19,910 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 142 transitions. [2022-04-27 22:24:19,911 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 22:24:19,911 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:19,911 INFO L195 NwaCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:19,938 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-27 22:24:20,127 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,SelfDestructingSolverStorable17 [2022-04-27 22:24:20,128 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:20,128 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:20,128 INFO L85 PathProgramCache]: Analyzing trace with hash 1060536243, now seen corresponding path program 9 times [2022-04-27 22:24:20,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:20,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1108889569] [2022-04-27 22:24:20,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:20,128 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:20,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:20,179 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:20,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:20,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {8737#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {8706#true} is VALID [2022-04-27 22:24:20,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {8706#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:20,186 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {8706#true} {8706#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:20,186 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:20,194 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:20,250 INFO L290 TraceCheckUtils]: 0: Hoare triple {8706#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:20,251 INFO L290 TraceCheckUtils]: 1: Hoare triple {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:20,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:20,268 INFO L290 TraceCheckUtils]: 3: Hoare triple {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8739#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:24:20,269 INFO L290 TraceCheckUtils]: 4: Hoare triple {8739#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8740#(and (<= correct_version_~l~0 (* 2 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:24:20,269 INFO L290 TraceCheckUtils]: 5: Hoare triple {8740#(and (<= correct_version_~l~0 (* 2 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,269 INFO L290 TraceCheckUtils]: 6: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,270 INFO L290 TraceCheckUtils]: 7: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,270 INFO L290 TraceCheckUtils]: 8: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,270 INFO L290 TraceCheckUtils]: 9: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,271 INFO L290 TraceCheckUtils]: 10: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,272 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} {8706#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {8723#(<= main_~m~0 (* main_~a~0 2))} is VALID [2022-04-27 22:24:20,272 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 22:24:20,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:20,376 INFO L290 TraceCheckUtils]: 0: Hoare triple {8706#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,378 INFO L290 TraceCheckUtils]: 3: Hoare triple {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8743#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:20,378 INFO L290 TraceCheckUtils]: 4: Hoare triple {8743#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8744#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,379 INFO L290 TraceCheckUtils]: 5: Hoare triple {8744#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8745#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 2) 1) student_version_~m))} is VALID [2022-04-27 22:24:20,379 INFO L290 TraceCheckUtils]: 6: Hoare triple {8745#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 2) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,380 INFO L290 TraceCheckUtils]: 8: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,380 INFO L290 TraceCheckUtils]: 10: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,381 INFO L290 TraceCheckUtils]: 11: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,382 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} {8723#(<= main_~m~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {8707#false} is VALID [2022-04-27 22:24:20,382 INFO L272 TraceCheckUtils]: 0: Hoare triple {8706#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8737#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:20,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {8737#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {8706#true} is VALID [2022-04-27 22:24:20,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {8706#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:20,382 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8706#true} {8706#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:20,382 INFO L272 TraceCheckUtils]: 4: Hoare triple {8706#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:20,382 INFO L290 TraceCheckUtils]: 5: Hoare triple {8706#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:20,383 INFO L290 TraceCheckUtils]: 6: Hoare triple {8706#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:20,383 INFO L272 TraceCheckUtils]: 7: Hoare triple {8706#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:20,383 INFO L290 TraceCheckUtils]: 8: Hoare triple {8706#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:20,383 INFO L290 TraceCheckUtils]: 9: Hoare triple {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:20,384 INFO L290 TraceCheckUtils]: 10: Hoare triple {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:20,384 INFO L290 TraceCheckUtils]: 11: Hoare triple {8738#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8739#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:24:20,385 INFO L290 TraceCheckUtils]: 12: Hoare triple {8739#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8740#(and (<= correct_version_~l~0 (* 2 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:24:20,385 INFO L290 TraceCheckUtils]: 13: Hoare triple {8740#(and (<= correct_version_~l~0 (* 2 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,385 INFO L290 TraceCheckUtils]: 14: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,386 INFO L290 TraceCheckUtils]: 15: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,386 INFO L290 TraceCheckUtils]: 16: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,386 INFO L290 TraceCheckUtils]: 17: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,387 INFO L290 TraceCheckUtils]: 18: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:20,387 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} {8706#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {8723#(<= main_~m~0 (* main_~a~0 2))} is VALID [2022-04-27 22:24:20,388 INFO L290 TraceCheckUtils]: 20: Hoare triple {8723#(<= main_~m~0 (* main_~a~0 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {8723#(<= main_~m~0 (* main_~a~0 2))} is VALID [2022-04-27 22:24:20,388 INFO L272 TraceCheckUtils]: 21: Hoare triple {8723#(<= main_~m~0 (* main_~a~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:20,388 INFO L290 TraceCheckUtils]: 22: Hoare triple {8706#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,388 INFO L290 TraceCheckUtils]: 23: Hoare triple {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,389 INFO L290 TraceCheckUtils]: 24: Hoare triple {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,389 INFO L290 TraceCheckUtils]: 25: Hoare triple {8742#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8743#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:20,390 INFO L290 TraceCheckUtils]: 26: Hoare triple {8743#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8744#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:20,390 INFO L290 TraceCheckUtils]: 27: Hoare triple {8744#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8745#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 2) 1) student_version_~m))} is VALID [2022-04-27 22:24:20,390 INFO L290 TraceCheckUtils]: 28: Hoare triple {8745#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 2) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,391 INFO L290 TraceCheckUtils]: 29: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,391 INFO L290 TraceCheckUtils]: 30: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,391 INFO L290 TraceCheckUtils]: 31: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,391 INFO L290 TraceCheckUtils]: 32: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,392 INFO L290 TraceCheckUtils]: 33: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:20,392 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} {8723#(<= main_~m~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {8707#false} is VALID [2022-04-27 22:24:20,393 INFO L290 TraceCheckUtils]: 35: Hoare triple {8707#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {8707#false} is VALID [2022-04-27 22:24:20,393 INFO L272 TraceCheckUtils]: 36: Hoare triple {8707#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {8707#false} is VALID [2022-04-27 22:24:20,393 INFO L290 TraceCheckUtils]: 37: Hoare triple {8707#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {8707#false} is VALID [2022-04-27 22:24:20,393 INFO L290 TraceCheckUtils]: 38: Hoare triple {8707#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {8707#false} is VALID [2022-04-27 22:24:20,393 INFO L290 TraceCheckUtils]: 39: Hoare triple {8707#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8707#false} is VALID [2022-04-27 22:24:20,393 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:20,393 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:20,393 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1108889569] [2022-04-27 22:24:20,393 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1108889569] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:20,394 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [647269702] [2022-04-27 22:24:20,394 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:24:20,394 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:20,394 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:20,395 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-27 22:24:20,395 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-27 22:24:20,443 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 22:24:20,443 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:20,444 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-27 22:24:20,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:20,460 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:21,212 INFO L272 TraceCheckUtils]: 0: Hoare triple {8706#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:21,212 INFO L290 TraceCheckUtils]: 1: Hoare triple {8706#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {8706#true} is VALID [2022-04-27 22:24:21,212 INFO L290 TraceCheckUtils]: 2: Hoare triple {8706#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:21,212 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8706#true} {8706#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:21,212 INFO L272 TraceCheckUtils]: 4: Hoare triple {8706#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:21,212 INFO L290 TraceCheckUtils]: 5: Hoare triple {8706#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:21,212 INFO L290 TraceCheckUtils]: 6: Hoare triple {8706#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:21,212 INFO L272 TraceCheckUtils]: 7: Hoare triple {8706#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:21,213 INFO L290 TraceCheckUtils]: 8: Hoare triple {8706#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {8774#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,213 INFO L290 TraceCheckUtils]: 9: Hoare triple {8774#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {8774#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,214 INFO L290 TraceCheckUtils]: 10: Hoare triple {8774#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {8774#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,214 INFO L290 TraceCheckUtils]: 11: Hoare triple {8774#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8784#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,215 INFO L290 TraceCheckUtils]: 12: Hoare triple {8784#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8788#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 2)) |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,215 INFO L290 TraceCheckUtils]: 13: Hoare triple {8788#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 2)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,216 INFO L290 TraceCheckUtils]: 14: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,216 INFO L290 TraceCheckUtils]: 15: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,216 INFO L290 TraceCheckUtils]: 16: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,217 INFO L290 TraceCheckUtils]: 17: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,217 INFO L290 TraceCheckUtils]: 18: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:21,218 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} {8706#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {8723#(<= main_~m~0 (* main_~a~0 2))} is VALID [2022-04-27 22:24:21,218 INFO L290 TraceCheckUtils]: 20: Hoare triple {8723#(<= main_~m~0 (* main_~a~0 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {8723#(<= main_~m~0 (* main_~a~0 2))} is VALID [2022-04-27 22:24:21,218 INFO L272 TraceCheckUtils]: 21: Hoare triple {8723#(<= main_~m~0 (* main_~a~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:21,219 INFO L290 TraceCheckUtils]: 22: Hoare triple {8706#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {8819#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:21,219 INFO L290 TraceCheckUtils]: 23: Hoare triple {8819#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {8819#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:21,220 INFO L290 TraceCheckUtils]: 24: Hoare triple {8819#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {8819#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:21,220 INFO L290 TraceCheckUtils]: 25: Hoare triple {8819#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8829#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:21,221 INFO L290 TraceCheckUtils]: 26: Hoare triple {8829#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8833#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 2)))} is VALID [2022-04-27 22:24:21,221 INFO L290 TraceCheckUtils]: 27: Hoare triple {8833#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 2)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:21,222 INFO L290 TraceCheckUtils]: 28: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:21,222 INFO L290 TraceCheckUtils]: 29: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:21,222 INFO L290 TraceCheckUtils]: 30: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:21,223 INFO L290 TraceCheckUtils]: 31: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:21,223 INFO L290 TraceCheckUtils]: 32: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:21,223 INFO L290 TraceCheckUtils]: 33: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:21,224 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} {8723#(<= main_~m~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {8707#false} is VALID [2022-04-27 22:24:21,224 INFO L290 TraceCheckUtils]: 35: Hoare triple {8707#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {8707#false} is VALID [2022-04-27 22:24:21,224 INFO L272 TraceCheckUtils]: 36: Hoare triple {8707#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {8707#false} is VALID [2022-04-27 22:24:21,224 INFO L290 TraceCheckUtils]: 37: Hoare triple {8707#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {8707#false} is VALID [2022-04-27 22:24:21,224 INFO L290 TraceCheckUtils]: 38: Hoare triple {8707#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {8707#false} is VALID [2022-04-27 22:24:21,224 INFO L290 TraceCheckUtils]: 39: Hoare triple {8707#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8707#false} is VALID [2022-04-27 22:24:21,225 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:21,225 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:22,176 INFO L290 TraceCheckUtils]: 39: Hoare triple {8707#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8707#false} is VALID [2022-04-27 22:24:22,176 INFO L290 TraceCheckUtils]: 38: Hoare triple {8707#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {8707#false} is VALID [2022-04-27 22:24:22,176 INFO L290 TraceCheckUtils]: 37: Hoare triple {8707#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {8707#false} is VALID [2022-04-27 22:24:22,176 INFO L272 TraceCheckUtils]: 36: Hoare triple {8707#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {8707#false} is VALID [2022-04-27 22:24:22,176 INFO L290 TraceCheckUtils]: 35: Hoare triple {8707#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {8707#false} is VALID [2022-04-27 22:24:22,177 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} {8723#(<= main_~m~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {8707#false} is VALID [2022-04-27 22:24:22,177 INFO L290 TraceCheckUtils]: 33: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:22,178 INFO L290 TraceCheckUtils]: 32: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:22,178 INFO L290 TraceCheckUtils]: 31: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:22,178 INFO L290 TraceCheckUtils]: 30: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:22,178 INFO L290 TraceCheckUtils]: 29: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:22,178 INFO L290 TraceCheckUtils]: 28: Hoare triple {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:22,179 INFO L290 TraceCheckUtils]: 27: Hoare triple {8912#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8746#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:22,179 INFO L290 TraceCheckUtils]: 26: Hoare triple {8916#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8912#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:24:22,180 INFO L290 TraceCheckUtils]: 25: Hoare triple {8920#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {8916#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:24:22,180 INFO L290 TraceCheckUtils]: 24: Hoare triple {8920#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {8920#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:24:22,180 INFO L290 TraceCheckUtils]: 23: Hoare triple {8920#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {8920#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:24:22,181 INFO L290 TraceCheckUtils]: 22: Hoare triple {8706#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {8920#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:24:22,181 INFO L272 TraceCheckUtils]: 21: Hoare triple {8723#(<= main_~m~0 (* main_~a~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:22,181 INFO L290 TraceCheckUtils]: 20: Hoare triple {8723#(<= main_~m~0 (* main_~a~0 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {8723#(<= main_~m~0 (* main_~a~0 2))} is VALID [2022-04-27 22:24:22,186 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} {8706#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {8723#(<= main_~m~0 (* main_~a~0 2))} is VALID [2022-04-27 22:24:22,186 INFO L290 TraceCheckUtils]: 18: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:22,186 INFO L290 TraceCheckUtils]: 17: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:22,187 INFO L290 TraceCheckUtils]: 16: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:22,187 INFO L290 TraceCheckUtils]: 15: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:22,187 INFO L290 TraceCheckUtils]: 14: Hoare triple {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:22,187 INFO L290 TraceCheckUtils]: 13: Hoare triple {8957#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {8741#(<= |correct_version_#in~m| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:22,188 INFO L290 TraceCheckUtils]: 12: Hoare triple {8961#(or (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8957#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:22,188 INFO L290 TraceCheckUtils]: 11: Hoare triple {8965#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {8961#(or (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:24:22,189 INFO L290 TraceCheckUtils]: 10: Hoare triple {8965#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {8965#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:22,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {8965#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {8965#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:22,189 INFO L290 TraceCheckUtils]: 8: Hoare triple {8706#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {8965#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 2 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:22,189 INFO L272 TraceCheckUtils]: 7: Hoare triple {8706#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L290 TraceCheckUtils]: 6: Hoare triple {8706#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L290 TraceCheckUtils]: 5: Hoare triple {8706#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L272 TraceCheckUtils]: 4: Hoare triple {8706#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8706#true} {8706#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L290 TraceCheckUtils]: 2: Hoare triple {8706#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L290 TraceCheckUtils]: 1: Hoare triple {8706#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L272 TraceCheckUtils]: 0: Hoare triple {8706#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {8706#true} is VALID [2022-04-27 22:24:22,190 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:22,190 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [647269702] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:22,190 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:22,190 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11, 11] total 25 [2022-04-27 22:24:22,191 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [734765649] [2022-04-27 22:24:22,191 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:22,191 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 40 [2022-04-27 22:24:22,191 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:22,191 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:22,227 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:22,227 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-27 22:24:22,227 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:22,228 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-27 22:24:22,228 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=525, Unknown=0, NotChecked=0, Total=600 [2022-04-27 22:24:22,228 INFO L87 Difference]: Start difference. First operand 118 states and 142 transitions. Second operand has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:23,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:23,752 INFO L93 Difference]: Finished difference Result 136 states and 165 transitions. [2022-04-27 22:24:23,752 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 22:24:23,752 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 40 [2022-04-27 22:24:23,752 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:23,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:23,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 82 transitions. [2022-04-27 22:24:23,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:23,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 82 transitions. [2022-04-27 22:24:23,754 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 82 transitions. [2022-04-27 22:24:23,821 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:23,823 INFO L225 Difference]: With dead ends: 136 [2022-04-27 22:24:23,823 INFO L226 Difference]: Without dead ends: 122 [2022-04-27 22:24:23,824 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 107 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 149 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=166, Invalid=1166, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:24:23,824 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 140 mSDsluCounter, 72 mSDsCounter, 0 mSdLazyCounter, 780 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 145 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 805 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 780 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:23,824 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [145 Valid, 116 Invalid, 805 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 780 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-27 22:24:23,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 122 states. [2022-04-27 22:24:23,994 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 122 to 113. [2022-04-27 22:24:23,994 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:23,994 INFO L82 GeneralOperation]: Start isEquivalent. First operand 122 states. Second operand has 113 states, 89 states have (on average 1.247191011235955) internal successors, (111), 99 states have internal predecessors, (111), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (17), 8 states have call predecessors, (17), 8 states have call successors, (17) [2022-04-27 22:24:23,994 INFO L74 IsIncluded]: Start isIncluded. First operand 122 states. Second operand has 113 states, 89 states have (on average 1.247191011235955) internal successors, (111), 99 states have internal predecessors, (111), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (17), 8 states have call predecessors, (17), 8 states have call successors, (17) [2022-04-27 22:24:23,995 INFO L87 Difference]: Start difference. First operand 122 states. Second operand has 113 states, 89 states have (on average 1.247191011235955) internal successors, (111), 99 states have internal predecessors, (111), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (17), 8 states have call predecessors, (17), 8 states have call successors, (17) [2022-04-27 22:24:23,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:23,996 INFO L93 Difference]: Finished difference Result 122 states and 148 transitions. [2022-04-27 22:24:23,996 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 148 transitions. [2022-04-27 22:24:23,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:23,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:23,997 INFO L74 IsIncluded]: Start isIncluded. First operand has 113 states, 89 states have (on average 1.247191011235955) internal successors, (111), 99 states have internal predecessors, (111), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (17), 8 states have call predecessors, (17), 8 states have call successors, (17) Second operand 122 states. [2022-04-27 22:24:23,997 INFO L87 Difference]: Start difference. First operand has 113 states, 89 states have (on average 1.247191011235955) internal successors, (111), 99 states have internal predecessors, (111), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (17), 8 states have call predecessors, (17), 8 states have call successors, (17) Second operand 122 states. [2022-04-27 22:24:23,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:23,999 INFO L93 Difference]: Finished difference Result 122 states and 148 transitions. [2022-04-27 22:24:23,999 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 148 transitions. [2022-04-27 22:24:23,999 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:23,999 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:23,999 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:23,999 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:24,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 113 states, 89 states have (on average 1.247191011235955) internal successors, (111), 99 states have internal predecessors, (111), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (17), 8 states have call predecessors, (17), 8 states have call successors, (17) [2022-04-27 22:24:24,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 138 transitions. [2022-04-27 22:24:24,001 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 138 transitions. Word has length 40 [2022-04-27 22:24:24,001 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:24,001 INFO L495 AbstractCegarLoop]: Abstraction has 113 states and 138 transitions. [2022-04-27 22:24:24,001 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:24,001 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 138 transitions. [2022-04-27 22:24:24,002 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 22:24:24,002 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:24,002 INFO L195 NwaCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:24,028 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-27 22:24:24,228 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:24,229 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:24,229 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:24,229 INFO L85 PathProgramCache]: Analyzing trace with hash 683418749, now seen corresponding path program 10 times [2022-04-27 22:24:24,229 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:24,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [331057337] [2022-04-27 22:24:24,229 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:24,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:24,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:24,257 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:24,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:24,259 INFO L290 TraceCheckUtils]: 0: Hoare triple {9636#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {9605#true} is VALID [2022-04-27 22:24:24,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {9605#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:24,259 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {9605#true} {9605#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:24,260 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:24,263 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:24,304 INFO L290 TraceCheckUtils]: 0: Hoare triple {9605#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,305 INFO L290 TraceCheckUtils]: 3: Hoare triple {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9638#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,306 INFO L290 TraceCheckUtils]: 4: Hoare triple {9638#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9639#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,306 INFO L290 TraceCheckUtils]: 5: Hoare triple {9639#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9640#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 2 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:24:24,307 INFO L290 TraceCheckUtils]: 6: Hoare triple {9640#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 2 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,307 INFO L290 TraceCheckUtils]: 7: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,307 INFO L290 TraceCheckUtils]: 8: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,307 INFO L290 TraceCheckUtils]: 9: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,308 INFO L290 TraceCheckUtils]: 10: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,308 INFO L290 TraceCheckUtils]: 11: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,308 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {9605#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} is VALID [2022-04-27 22:24:24,308 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:24:24,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:24,389 INFO L290 TraceCheckUtils]: 0: Hoare triple {9605#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:24,390 INFO L290 TraceCheckUtils]: 1: Hoare triple {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:24,390 INFO L290 TraceCheckUtils]: 2: Hoare triple {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:24,390 INFO L290 TraceCheckUtils]: 3: Hoare triple {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:24:24,391 INFO L290 TraceCheckUtils]: 4: Hoare triple {9643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9644#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 2)))} is VALID [2022-04-27 22:24:24,391 INFO L290 TraceCheckUtils]: 5: Hoare triple {9644#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 2)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,392 INFO L290 TraceCheckUtils]: 6: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,392 INFO L290 TraceCheckUtils]: 7: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,392 INFO L290 TraceCheckUtils]: 8: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,392 INFO L290 TraceCheckUtils]: 9: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,393 INFO L290 TraceCheckUtils]: 10: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,393 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {9606#false} is VALID [2022-04-27 22:24:24,394 INFO L272 TraceCheckUtils]: 0: Hoare triple {9605#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9636#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:24,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {9636#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {9605#true} is VALID [2022-04-27 22:24:24,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {9605#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:24,394 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9605#true} {9605#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:24,394 INFO L272 TraceCheckUtils]: 4: Hoare triple {9605#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:24,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {9605#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:24,394 INFO L290 TraceCheckUtils]: 6: Hoare triple {9605#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:24,394 INFO L272 TraceCheckUtils]: 7: Hoare triple {9605#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:24,395 INFO L290 TraceCheckUtils]: 8: Hoare triple {9605#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,395 INFO L290 TraceCheckUtils]: 9: Hoare triple {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,396 INFO L290 TraceCheckUtils]: 10: Hoare triple {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,396 INFO L290 TraceCheckUtils]: 11: Hoare triple {9637#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9638#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,397 INFO L290 TraceCheckUtils]: 12: Hoare triple {9638#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9639#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:24,397 INFO L290 TraceCheckUtils]: 13: Hoare triple {9639#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9640#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 2 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:24:24,397 INFO L290 TraceCheckUtils]: 14: Hoare triple {9640#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 2 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,398 INFO L290 TraceCheckUtils]: 15: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,398 INFO L290 TraceCheckUtils]: 16: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,398 INFO L290 TraceCheckUtils]: 17: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,399 INFO L290 TraceCheckUtils]: 19: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:24,400 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {9605#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} is VALID [2022-04-27 22:24:24,400 INFO L290 TraceCheckUtils]: 21: Hoare triple {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} is VALID [2022-04-27 22:24:24,400 INFO L272 TraceCheckUtils]: 22: Hoare triple {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:24,400 INFO L290 TraceCheckUtils]: 23: Hoare triple {9605#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:24,401 INFO L290 TraceCheckUtils]: 24: Hoare triple {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:24,401 INFO L290 TraceCheckUtils]: 25: Hoare triple {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:24,401 INFO L290 TraceCheckUtils]: 26: Hoare triple {9642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:24:24,402 INFO L290 TraceCheckUtils]: 27: Hoare triple {9643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9644#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 2)))} is VALID [2022-04-27 22:24:24,402 INFO L290 TraceCheckUtils]: 28: Hoare triple {9644#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 2)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,403 INFO L290 TraceCheckUtils]: 29: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,403 INFO L290 TraceCheckUtils]: 32: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,404 INFO L290 TraceCheckUtils]: 33: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:24,404 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {9606#false} is VALID [2022-04-27 22:24:24,404 INFO L290 TraceCheckUtils]: 35: Hoare triple {9606#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {9606#false} is VALID [2022-04-27 22:24:24,404 INFO L272 TraceCheckUtils]: 36: Hoare triple {9606#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {9606#false} is VALID [2022-04-27 22:24:24,405 INFO L290 TraceCheckUtils]: 37: Hoare triple {9606#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {9606#false} is VALID [2022-04-27 22:24:24,405 INFO L290 TraceCheckUtils]: 38: Hoare triple {9606#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {9606#false} is VALID [2022-04-27 22:24:24,405 INFO L290 TraceCheckUtils]: 39: Hoare triple {9606#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9606#false} is VALID [2022-04-27 22:24:24,405 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:24,405 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:24,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [331057337] [2022-04-27 22:24:24,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [331057337] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:24,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1569145075] [2022-04-27 22:24:24,405 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:24:24,405 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:24,405 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:24,406 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-27 22:24:24,421 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-27 22:24:24,464 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:24:24,464 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:24,464 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-27 22:24:24,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:24,474 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:25,149 INFO L272 TraceCheckUtils]: 0: Hoare triple {9605#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,149 INFO L290 TraceCheckUtils]: 1: Hoare triple {9605#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {9605#true} is VALID [2022-04-27 22:24:25,149 INFO L290 TraceCheckUtils]: 2: Hoare triple {9605#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,149 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9605#true} {9605#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,149 INFO L272 TraceCheckUtils]: 4: Hoare triple {9605#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,150 INFO L290 TraceCheckUtils]: 5: Hoare triple {9605#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:25,150 INFO L290 TraceCheckUtils]: 6: Hoare triple {9605#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,150 INFO L272 TraceCheckUtils]: 7: Hoare triple {9605#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:25,150 INFO L290 TraceCheckUtils]: 8: Hoare triple {9605#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {9673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:25,150 INFO L290 TraceCheckUtils]: 9: Hoare triple {9673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {9673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:25,151 INFO L290 TraceCheckUtils]: 10: Hoare triple {9673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {9673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:25,151 INFO L290 TraceCheckUtils]: 11: Hoare triple {9673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9683#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:25,152 INFO L290 TraceCheckUtils]: 12: Hoare triple {9683#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9687#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 2)))} is VALID [2022-04-27 22:24:25,152 INFO L290 TraceCheckUtils]: 13: Hoare triple {9687#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 2)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,152 INFO L290 TraceCheckUtils]: 14: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,153 INFO L290 TraceCheckUtils]: 15: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,153 INFO L290 TraceCheckUtils]: 16: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,153 INFO L290 TraceCheckUtils]: 17: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,154 INFO L290 TraceCheckUtils]: 18: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,154 INFO L290 TraceCheckUtils]: 19: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,154 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {9605#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} is VALID [2022-04-27 22:24:25,155 INFO L290 TraceCheckUtils]: 21: Hoare triple {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} is VALID [2022-04-27 22:24:25,155 INFO L272 TraceCheckUtils]: 22: Hoare triple {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:25,155 INFO L290 TraceCheckUtils]: 23: Hoare triple {9605#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {9721#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:25,155 INFO L290 TraceCheckUtils]: 24: Hoare triple {9721#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {9721#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:25,156 INFO L290 TraceCheckUtils]: 25: Hoare triple {9721#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {9721#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:25,156 INFO L290 TraceCheckUtils]: 26: Hoare triple {9721#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9731#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:25,157 INFO L290 TraceCheckUtils]: 27: Hoare triple {9731#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9735#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 2)) |student_version_#in~a|))} is VALID [2022-04-27 22:24:25,157 INFO L290 TraceCheckUtils]: 28: Hoare triple {9735#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 2)) |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,157 INFO L290 TraceCheckUtils]: 29: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,157 INFO L290 TraceCheckUtils]: 30: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,158 INFO L290 TraceCheckUtils]: 31: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,158 INFO L290 TraceCheckUtils]: 32: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,158 INFO L290 TraceCheckUtils]: 33: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,159 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {9606#false} is VALID [2022-04-27 22:24:25,159 INFO L290 TraceCheckUtils]: 35: Hoare triple {9606#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {9606#false} is VALID [2022-04-27 22:24:25,159 INFO L272 TraceCheckUtils]: 36: Hoare triple {9606#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {9606#false} is VALID [2022-04-27 22:24:25,159 INFO L290 TraceCheckUtils]: 37: Hoare triple {9606#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {9606#false} is VALID [2022-04-27 22:24:25,159 INFO L290 TraceCheckUtils]: 38: Hoare triple {9606#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {9606#false} is VALID [2022-04-27 22:24:25,159 INFO L290 TraceCheckUtils]: 39: Hoare triple {9606#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9606#false} is VALID [2022-04-27 22:24:25,159 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:25,159 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:25,819 INFO L290 TraceCheckUtils]: 39: Hoare triple {9606#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9606#false} is VALID [2022-04-27 22:24:25,819 INFO L290 TraceCheckUtils]: 38: Hoare triple {9606#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {9606#false} is VALID [2022-04-27 22:24:25,819 INFO L290 TraceCheckUtils]: 37: Hoare triple {9606#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {9606#false} is VALID [2022-04-27 22:24:25,819 INFO L272 TraceCheckUtils]: 36: Hoare triple {9606#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {9606#false} is VALID [2022-04-27 22:24:25,820 INFO L290 TraceCheckUtils]: 35: Hoare triple {9606#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {9606#false} is VALID [2022-04-27 22:24:25,820 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {9606#false} is VALID [2022-04-27 22:24:25,820 INFO L290 TraceCheckUtils]: 33: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,820 INFO L290 TraceCheckUtils]: 32: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,821 INFO L290 TraceCheckUtils]: 31: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,821 INFO L290 TraceCheckUtils]: 30: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,821 INFO L290 TraceCheckUtils]: 29: Hoare triple {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,821 INFO L290 TraceCheckUtils]: 28: Hoare triple {9808#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {9645#(<= |student_version_#in~m| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:24:25,822 INFO L290 TraceCheckUtils]: 27: Hoare triple {9812#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9808#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:24:25,822 INFO L290 TraceCheckUtils]: 26: Hoare triple {9816#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {9812#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:24:25,822 INFO L290 TraceCheckUtils]: 25: Hoare triple {9816#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {9816#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:24:25,823 INFO L290 TraceCheckUtils]: 24: Hoare triple {9816#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {9816#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:24:25,823 INFO L290 TraceCheckUtils]: 23: Hoare triple {9605#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {9816#(or (<= |student_version_#in~m| (* |student_version_#in~a| 2)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:24:25,823 INFO L272 TraceCheckUtils]: 22: Hoare triple {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:25,823 INFO L290 TraceCheckUtils]: 21: Hoare triple {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} is VALID [2022-04-27 22:24:25,824 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {9605#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {9623#(<= (+ (* main_~a~0 2) 1) main_~m~0)} is VALID [2022-04-27 22:24:25,824 INFO L290 TraceCheckUtils]: 19: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,824 INFO L290 TraceCheckUtils]: 18: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,825 INFO L290 TraceCheckUtils]: 17: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,825 INFO L290 TraceCheckUtils]: 16: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,825 INFO L290 TraceCheckUtils]: 15: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,825 INFO L290 TraceCheckUtils]: 14: Hoare triple {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {9856#(or (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9641#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:25,826 INFO L290 TraceCheckUtils]: 12: Hoare triple {9860#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9856#(or (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:24:25,827 INFO L290 TraceCheckUtils]: 11: Hoare triple {9864#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {9860#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:25,827 INFO L290 TraceCheckUtils]: 10: Hoare triple {9864#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {9864#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:25,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {9864#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {9864#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:25,828 INFO L290 TraceCheckUtils]: 8: Hoare triple {9605#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {9864#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:25,828 INFO L272 TraceCheckUtils]: 7: Hoare triple {9605#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L290 TraceCheckUtils]: 6: Hoare triple {9605#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L290 TraceCheckUtils]: 5: Hoare triple {9605#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L272 TraceCheckUtils]: 4: Hoare triple {9605#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9605#true} {9605#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L290 TraceCheckUtils]: 2: Hoare triple {9605#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L290 TraceCheckUtils]: 1: Hoare triple {9605#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L272 TraceCheckUtils]: 0: Hoare triple {9605#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9605#true} is VALID [2022-04-27 22:24:25,828 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:25,828 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1569145075] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:25,829 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:25,829 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11, 11] total 25 [2022-04-27 22:24:25,829 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2134256002] [2022-04-27 22:24:25,829 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:25,829 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 40 [2022-04-27 22:24:25,829 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:25,830 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:25,859 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:25,859 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-27 22:24:25,859 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:25,859 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-27 22:24:25,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=525, Unknown=0, NotChecked=0, Total=600 [2022-04-27 22:24:25,860 INFO L87 Difference]: Start difference. First operand 113 states and 138 transitions. Second operand has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:27,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:27,204 INFO L93 Difference]: Finished difference Result 128 states and 153 transitions. [2022-04-27 22:24:27,204 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 22:24:27,205 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 40 [2022-04-27 22:24:27,205 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:27,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:27,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 81 transitions. [2022-04-27 22:24:27,206 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:27,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 81 transitions. [2022-04-27 22:24:27,207 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 81 transitions. [2022-04-27 22:24:27,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:27,280 INFO L225 Difference]: With dead ends: 128 [2022-04-27 22:24:27,280 INFO L226 Difference]: Without dead ends: 116 [2022-04-27 22:24:27,281 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 107 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 155 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=166, Invalid=1166, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:24:27,282 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 158 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 885 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 163 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 907 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 885 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:27,282 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [163 Valid, 128 Invalid, 907 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 885 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-27 22:24:27,286 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-04-27 22:24:27,467 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 114. [2022-04-27 22:24:27,467 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:27,468 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 114 states, 90 states have (on average 1.2444444444444445) internal successors, (112), 100 states have internal predecessors, (112), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:27,468 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 114 states, 90 states have (on average 1.2444444444444445) internal successors, (112), 100 states have internal predecessors, (112), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:27,469 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 114 states, 90 states have (on average 1.2444444444444445) internal successors, (112), 100 states have internal predecessors, (112), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:27,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:27,471 INFO L93 Difference]: Finished difference Result 116 states and 139 transitions. [2022-04-27 22:24:27,471 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 139 transitions. [2022-04-27 22:24:27,471 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:27,471 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:27,471 INFO L74 IsIncluded]: Start isIncluded. First operand has 114 states, 90 states have (on average 1.2444444444444445) internal successors, (112), 100 states have internal predecessors, (112), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) Second operand 116 states. [2022-04-27 22:24:27,471 INFO L87 Difference]: Start difference. First operand has 114 states, 90 states have (on average 1.2444444444444445) internal successors, (112), 100 states have internal predecessors, (112), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) Second operand 116 states. [2022-04-27 22:24:27,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:27,475 INFO L93 Difference]: Finished difference Result 116 states and 139 transitions. [2022-04-27 22:24:27,475 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 139 transitions. [2022-04-27 22:24:27,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:27,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:27,476 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:27,476 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:27,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 114 states, 90 states have (on average 1.2444444444444445) internal successors, (112), 100 states have internal predecessors, (112), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:27,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 114 states to 114 states and 137 transitions. [2022-04-27 22:24:27,479 INFO L78 Accepts]: Start accepts. Automaton has 114 states and 137 transitions. Word has length 40 [2022-04-27 22:24:27,479 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:27,479 INFO L495 AbstractCegarLoop]: Abstraction has 114 states and 137 transitions. [2022-04-27 22:24:27,480 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 2.32) internal successors, (58), 24 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:27,480 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 137 transitions. [2022-04-27 22:24:27,480 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 22:24:27,480 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:27,480 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:27,515 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-27 22:24:27,715 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:27,716 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:27,716 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:27,716 INFO L85 PathProgramCache]: Analyzing trace with hash 2011491521, now seen corresponding path program 11 times [2022-04-27 22:24:27,716 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:27,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [970363588] [2022-04-27 22:24:27,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:27,717 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:27,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:27,743 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:27,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:27,746 INFO L290 TraceCheckUtils]: 0: Hoare triple {10512#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {10482#true} is VALID [2022-04-27 22:24:27,746 INFO L290 TraceCheckUtils]: 1: Hoare triple {10482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,746 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {10482#true} {10482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,746 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:27,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:27,775 INFO L290 TraceCheckUtils]: 0: Hoare triple {10482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {10513#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,776 INFO L290 TraceCheckUtils]: 1: Hoare triple {10513#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10514#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,776 INFO L290 TraceCheckUtils]: 2: Hoare triple {10514#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,777 INFO L290 TraceCheckUtils]: 3: Hoare triple {10515#(<= 2 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,777 INFO L290 TraceCheckUtils]: 4: Hoare triple {10515#(<= 2 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,777 INFO L290 TraceCheckUtils]: 5: Hoare triple {10515#(<= 2 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,778 INFO L290 TraceCheckUtils]: 6: Hoare triple {10515#(<= 2 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10516#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:24:27,778 INFO L290 TraceCheckUtils]: 7: Hoare triple {10516#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10517#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:24:27,778 INFO L290 TraceCheckUtils]: 8: Hoare triple {10517#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:27,779 INFO L290 TraceCheckUtils]: 9: Hoare triple {10483#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {10483#false} is VALID [2022-04-27 22:24:27,779 INFO L290 TraceCheckUtils]: 10: Hoare triple {10483#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:27,779 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {10483#false} {10482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:27,779 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 21 [2022-04-27 22:24:27,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:27,790 INFO L290 TraceCheckUtils]: 0: Hoare triple {10482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {10482#true} is VALID [2022-04-27 22:24:27,790 INFO L290 TraceCheckUtils]: 1: Hoare triple {10482#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 2: Hoare triple {10482#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 3: Hoare triple {10482#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 4: Hoare triple {10482#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 5: Hoare triple {10482#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 6: Hoare triple {10482#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 7: Hoare triple {10482#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 8: Hoare triple {10482#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 9: Hoare triple {10482#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 10: Hoare triple {10482#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L290 TraceCheckUtils]: 11: Hoare triple {10482#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,791 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {10482#true} {10483#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:27,792 INFO L272 TraceCheckUtils]: 0: Hoare triple {10482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10512#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:27,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {10512#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {10482#true} is VALID [2022-04-27 22:24:27,792 INFO L290 TraceCheckUtils]: 2: Hoare triple {10482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,792 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10482#true} {10482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,792 INFO L272 TraceCheckUtils]: 4: Hoare triple {10482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {10482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:27,792 INFO L290 TraceCheckUtils]: 6: Hoare triple {10482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,792 INFO L272 TraceCheckUtils]: 7: Hoare triple {10482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:27,793 INFO L290 TraceCheckUtils]: 8: Hoare triple {10482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {10513#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,793 INFO L290 TraceCheckUtils]: 9: Hoare triple {10513#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10514#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,793 INFO L290 TraceCheckUtils]: 10: Hoare triple {10514#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,794 INFO L290 TraceCheckUtils]: 11: Hoare triple {10515#(<= 2 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,794 INFO L290 TraceCheckUtils]: 12: Hoare triple {10515#(<= 2 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,794 INFO L290 TraceCheckUtils]: 13: Hoare triple {10515#(<= 2 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:27,794 INFO L290 TraceCheckUtils]: 14: Hoare triple {10515#(<= 2 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10516#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:24:27,795 INFO L290 TraceCheckUtils]: 15: Hoare triple {10516#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10517#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:24:27,795 INFO L290 TraceCheckUtils]: 16: Hoare triple {10517#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:27,795 INFO L290 TraceCheckUtils]: 17: Hoare triple {10483#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {10483#false} is VALID [2022-04-27 22:24:27,795 INFO L290 TraceCheckUtils]: 18: Hoare triple {10483#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:27,795 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {10483#false} {10482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:27,795 INFO L290 TraceCheckUtils]: 20: Hoare triple {10483#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {10483#false} is VALID [2022-04-27 22:24:27,796 INFO L272 TraceCheckUtils]: 21: Hoare triple {10483#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 22: Hoare triple {10482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 23: Hoare triple {10482#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 24: Hoare triple {10482#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 25: Hoare triple {10482#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 26: Hoare triple {10482#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 27: Hoare triple {10482#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 28: Hoare triple {10482#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 29: Hoare triple {10482#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 30: Hoare triple {10482#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 31: Hoare triple {10482#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 32: Hoare triple {10482#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 33: Hoare triple {10482#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:27,796 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10482#true} {10483#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:27,796 INFO L290 TraceCheckUtils]: 35: Hoare triple {10483#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {10483#false} is VALID [2022-04-27 22:24:27,797 INFO L272 TraceCheckUtils]: 36: Hoare triple {10483#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {10483#false} is VALID [2022-04-27 22:24:27,797 INFO L290 TraceCheckUtils]: 37: Hoare triple {10483#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {10483#false} is VALID [2022-04-27 22:24:27,797 INFO L290 TraceCheckUtils]: 38: Hoare triple {10483#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:27,797 INFO L290 TraceCheckUtils]: 39: Hoare triple {10483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:27,797 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:27,797 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:27,797 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [970363588] [2022-04-27 22:24:27,797 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [970363588] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:27,797 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1738369457] [2022-04-27 22:24:27,797 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:24:27,797 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:27,797 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:27,798 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-27 22:24:27,804 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-27 22:24:27,868 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:24:27,868 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:27,868 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-27 22:24:27,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:27,877 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:28,003 INFO L272 TraceCheckUtils]: 0: Hoare triple {10482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,003 INFO L290 TraceCheckUtils]: 1: Hoare triple {10482#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {10482#true} is VALID [2022-04-27 22:24:28,003 INFO L290 TraceCheckUtils]: 2: Hoare triple {10482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,003 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10482#true} {10482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,003 INFO L272 TraceCheckUtils]: 4: Hoare triple {10482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,003 INFO L290 TraceCheckUtils]: 5: Hoare triple {10482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:28,003 INFO L290 TraceCheckUtils]: 6: Hoare triple {10482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,003 INFO L272 TraceCheckUtils]: 7: Hoare triple {10482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:28,004 INFO L290 TraceCheckUtils]: 8: Hoare triple {10482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {10513#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,004 INFO L290 TraceCheckUtils]: 9: Hoare triple {10513#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10514#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,005 INFO L290 TraceCheckUtils]: 10: Hoare triple {10514#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,019 INFO L290 TraceCheckUtils]: 11: Hoare triple {10515#(<= 2 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,019 INFO L290 TraceCheckUtils]: 12: Hoare triple {10515#(<= 2 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,020 INFO L290 TraceCheckUtils]: 13: Hoare triple {10515#(<= 2 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,020 INFO L290 TraceCheckUtils]: 14: Hoare triple {10515#(<= 2 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10563#(and (<= 2 correct_version_~i~0) (<= correct_version_~x~0 0))} is VALID [2022-04-27 22:24:28,021 INFO L290 TraceCheckUtils]: 15: Hoare triple {10563#(and (<= 2 correct_version_~i~0) (<= correct_version_~x~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10567#(and (<= correct_version_~x~0 1) (<= 2 correct_version_~i~0))} is VALID [2022-04-27 22:24:28,021 INFO L290 TraceCheckUtils]: 16: Hoare triple {10567#(and (<= correct_version_~x~0 1) (<= 2 correct_version_~i~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,021 INFO L290 TraceCheckUtils]: 17: Hoare triple {10483#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {10483#false} is VALID [2022-04-27 22:24:28,021 INFO L290 TraceCheckUtils]: 18: Hoare triple {10483#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,021 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {10483#false} {10482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:28,021 INFO L290 TraceCheckUtils]: 20: Hoare triple {10483#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L272 TraceCheckUtils]: 21: Hoare triple {10483#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 22: Hoare triple {10483#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 23: Hoare triple {10483#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 24: Hoare triple {10483#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 25: Hoare triple {10483#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 26: Hoare triple {10483#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 27: Hoare triple {10483#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 28: Hoare triple {10483#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 29: Hoare triple {10483#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 30: Hoare triple {10483#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 31: Hoare triple {10483#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 32: Hoare triple {10483#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 33: Hoare triple {10483#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10483#false} {10483#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:28,022 INFO L290 TraceCheckUtils]: 35: Hoare triple {10483#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {10483#false} is VALID [2022-04-27 22:24:28,023 INFO L272 TraceCheckUtils]: 36: Hoare triple {10483#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {10483#false} is VALID [2022-04-27 22:24:28,023 INFO L290 TraceCheckUtils]: 37: Hoare triple {10483#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {10483#false} is VALID [2022-04-27 22:24:28,023 INFO L290 TraceCheckUtils]: 38: Hoare triple {10483#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,023 INFO L290 TraceCheckUtils]: 39: Hoare triple {10483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,023 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:28,023 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:28,159 INFO L290 TraceCheckUtils]: 39: Hoare triple {10483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,159 INFO L290 TraceCheckUtils]: 38: Hoare triple {10483#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,159 INFO L290 TraceCheckUtils]: 37: Hoare triple {10483#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {10483#false} is VALID [2022-04-27 22:24:28,159 INFO L272 TraceCheckUtils]: 36: Hoare triple {10483#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {10483#false} is VALID [2022-04-27 22:24:28,159 INFO L290 TraceCheckUtils]: 35: Hoare triple {10483#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {10483#false} is VALID [2022-04-27 22:24:28,159 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10482#true} {10483#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:28,159 INFO L290 TraceCheckUtils]: 33: Hoare triple {10482#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,159 INFO L290 TraceCheckUtils]: 32: Hoare triple {10482#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 31: Hoare triple {10482#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 30: Hoare triple {10482#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 29: Hoare triple {10482#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 28: Hoare triple {10482#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 27: Hoare triple {10482#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {10482#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {10482#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 24: Hoare triple {10482#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 23: Hoare triple {10482#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 22: Hoare triple {10482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L272 TraceCheckUtils]: 21: Hoare triple {10483#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:28,160 INFO L290 TraceCheckUtils]: 20: Hoare triple {10483#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {10483#false} is VALID [2022-04-27 22:24:28,161 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {10483#false} {10482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {10483#false} is VALID [2022-04-27 22:24:28,161 INFO L290 TraceCheckUtils]: 18: Hoare triple {10483#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,161 INFO L290 TraceCheckUtils]: 17: Hoare triple {10483#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {10483#false} is VALID [2022-04-27 22:24:28,179 INFO L290 TraceCheckUtils]: 16: Hoare triple {10517#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {10483#false} is VALID [2022-04-27 22:24:28,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {10516#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10517#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:24:28,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {10515#(<= 2 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {10516#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:24:28,181 INFO L290 TraceCheckUtils]: 13: Hoare triple {10515#(<= 2 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,181 INFO L290 TraceCheckUtils]: 12: Hoare triple {10515#(<= 2 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,181 INFO L290 TraceCheckUtils]: 11: Hoare triple {10515#(<= 2 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,182 INFO L290 TraceCheckUtils]: 10: Hoare triple {10514#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10515#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,182 INFO L290 TraceCheckUtils]: 9: Hoare triple {10513#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {10514#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,182 INFO L290 TraceCheckUtils]: 8: Hoare triple {10482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {10513#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:24:28,183 INFO L272 TraceCheckUtils]: 7: Hoare triple {10482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L290 TraceCheckUtils]: 6: Hoare triple {10482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {10482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L272 TraceCheckUtils]: 4: Hoare triple {10482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10482#true} {10482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L290 TraceCheckUtils]: 2: Hoare triple {10482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L290 TraceCheckUtils]: 1: Hoare triple {10482#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L272 TraceCheckUtils]: 0: Hoare triple {10482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10482#true} is VALID [2022-04-27 22:24:28,183 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:28,183 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1738369457] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:28,183 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:28,184 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 10 [2022-04-27 22:24:28,184 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [695352174] [2022-04-27 22:24:28,184 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:28,184 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-27 22:24:28,184 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:28,184 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:28,219 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-27 22:24:28,219 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 22:24:28,219 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:28,219 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 22:24:28,219 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=59, Unknown=0, NotChecked=0, Total=90 [2022-04-27 22:24:28,219 INFO L87 Difference]: Start difference. First operand 114 states and 137 transitions. Second operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:28,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:28,643 INFO L93 Difference]: Finished difference Result 170 states and 199 transitions. [2022-04-27 22:24:28,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 22:24:28,643 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-27 22:24:28,643 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:28,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:28,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 72 transitions. [2022-04-27 22:24:28,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:28,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 72 transitions. [2022-04-27 22:24:28,645 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 72 transitions. [2022-04-27 22:24:28,694 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:28,696 INFO L225 Difference]: With dead ends: 170 [2022-04-27 22:24:28,696 INFO L226 Difference]: Without dead ends: 105 [2022-04-27 22:24:28,696 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 83 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=84, Invalid=156, Unknown=0, NotChecked=0, Total=240 [2022-04-27 22:24:28,697 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 53 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 87 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 87 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:28,697 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [55 Valid, 48 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 87 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:24:28,697 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states. [2022-04-27 22:24:28,872 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 97. [2022-04-27 22:24:28,872 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:28,872 INFO L82 GeneralOperation]: Start isEquivalent. First operand 105 states. Second operand has 97 states, 79 states have (on average 1.2278481012658229) internal successors, (97), 85 states have internal predecessors, (97), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:28,872 INFO L74 IsIncluded]: Start isIncluded. First operand 105 states. Second operand has 97 states, 79 states have (on average 1.2278481012658229) internal successors, (97), 85 states have internal predecessors, (97), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:28,872 INFO L87 Difference]: Start difference. First operand 105 states. Second operand has 97 states, 79 states have (on average 1.2278481012658229) internal successors, (97), 85 states have internal predecessors, (97), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:28,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:28,874 INFO L93 Difference]: Finished difference Result 105 states and 124 transitions. [2022-04-27 22:24:28,874 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 124 transitions. [2022-04-27 22:24:28,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:28,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:28,874 INFO L74 IsIncluded]: Start isIncluded. First operand has 97 states, 79 states have (on average 1.2278481012658229) internal successors, (97), 85 states have internal predecessors, (97), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) Second operand 105 states. [2022-04-27 22:24:28,875 INFO L87 Difference]: Start difference. First operand has 97 states, 79 states have (on average 1.2278481012658229) internal successors, (97), 85 states have internal predecessors, (97), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) Second operand 105 states. [2022-04-27 22:24:28,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:28,876 INFO L93 Difference]: Finished difference Result 105 states and 124 transitions. [2022-04-27 22:24:28,876 INFO L276 IsEmpty]: Start isEmpty. Operand 105 states and 124 transitions. [2022-04-27 22:24:28,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:28,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:28,876 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:28,876 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:28,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 97 states, 79 states have (on average 1.2278481012658229) internal successors, (97), 85 states have internal predecessors, (97), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:28,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 114 transitions. [2022-04-27 22:24:28,877 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 114 transitions. Word has length 40 [2022-04-27 22:24:28,878 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:28,878 INFO L495 AbstractCegarLoop]: Abstraction has 97 states and 114 transitions. [2022-04-27 22:24:28,878 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:28,878 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 114 transitions. [2022-04-27 22:24:28,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 22:24:28,878 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:28,878 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:28,894 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-27 22:24:29,078 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,SelfDestructingSolverStorable20 [2022-04-27 22:24:29,079 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:29,079 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:29,079 INFO L85 PathProgramCache]: Analyzing trace with hash -1799645194, now seen corresponding path program 12 times [2022-04-27 22:24:29,079 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:29,079 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1892758162] [2022-04-27 22:24:29,079 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:29,079 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:29,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:29,103 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:29,104 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:29,106 INFO L290 TraceCheckUtils]: 0: Hoare triple {11375#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {11345#true} is VALID [2022-04-27 22:24:29,106 INFO L290 TraceCheckUtils]: 1: Hoare triple {11345#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,106 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {11345#true} {11345#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,106 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:29,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 0: Hoare triple {11345#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 3: Hoare triple {11345#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 4: Hoare triple {11345#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 5: Hoare triple {11345#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 6: Hoare triple {11345#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 7: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 8: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 9: Hoare triple {11345#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 10: Hoare triple {11345#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {11345#true} is VALID [2022-04-27 22:24:29,111 INFO L290 TraceCheckUtils]: 11: Hoare triple {11345#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,112 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {11345#true} {11345#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,112 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:24:29,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:29,144 INFO L290 TraceCheckUtils]: 0: Hoare triple {11345#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {11376#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:24:29,144 INFO L290 TraceCheckUtils]: 1: Hoare triple {11376#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11377#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:29,145 INFO L290 TraceCheckUtils]: 2: Hoare triple {11377#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,145 INFO L290 TraceCheckUtils]: 3: Hoare triple {11378#(<= 2 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,145 INFO L290 TraceCheckUtils]: 4: Hoare triple {11378#(<= 2 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,146 INFO L290 TraceCheckUtils]: 5: Hoare triple {11378#(<= 2 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,146 INFO L290 TraceCheckUtils]: 6: Hoare triple {11378#(<= 2 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11379#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:24:29,147 INFO L290 TraceCheckUtils]: 7: Hoare triple {11379#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11380#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:24:29,147 INFO L290 TraceCheckUtils]: 8: Hoare triple {11380#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,147 INFO L290 TraceCheckUtils]: 9: Hoare triple {11346#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {11346#false} is VALID [2022-04-27 22:24:29,147 INFO L290 TraceCheckUtils]: 10: Hoare triple {11346#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,147 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {11346#false} {11345#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {11346#false} is VALID [2022-04-27 22:24:29,148 INFO L272 TraceCheckUtils]: 0: Hoare triple {11345#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11375#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:29,148 INFO L290 TraceCheckUtils]: 1: Hoare triple {11375#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L290 TraceCheckUtils]: 2: Hoare triple {11345#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11345#true} {11345#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L272 TraceCheckUtils]: 4: Hoare triple {11345#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L290 TraceCheckUtils]: 5: Hoare triple {11345#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L290 TraceCheckUtils]: 6: Hoare triple {11345#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L272 TraceCheckUtils]: 7: Hoare triple {11345#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L290 TraceCheckUtils]: 8: Hoare triple {11345#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L290 TraceCheckUtils]: 9: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,148 INFO L290 TraceCheckUtils]: 10: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 11: Hoare triple {11345#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 12: Hoare triple {11345#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 13: Hoare triple {11345#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 14: Hoare triple {11345#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 15: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 16: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 17: Hoare triple {11345#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 18: Hoare triple {11345#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 19: Hoare triple {11345#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {11345#true} {11345#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L290 TraceCheckUtils]: 21: Hoare triple {11345#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {11345#true} is VALID [2022-04-27 22:24:29,149 INFO L272 TraceCheckUtils]: 22: Hoare triple {11345#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,150 INFO L290 TraceCheckUtils]: 23: Hoare triple {11345#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {11376#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:24:29,150 INFO L290 TraceCheckUtils]: 24: Hoare triple {11376#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11377#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:29,150 INFO L290 TraceCheckUtils]: 25: Hoare triple {11377#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,151 INFO L290 TraceCheckUtils]: 26: Hoare triple {11378#(<= 2 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,151 INFO L290 TraceCheckUtils]: 27: Hoare triple {11378#(<= 2 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,151 INFO L290 TraceCheckUtils]: 28: Hoare triple {11378#(<= 2 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,152 INFO L290 TraceCheckUtils]: 29: Hoare triple {11378#(<= 2 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11379#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:24:29,152 INFO L290 TraceCheckUtils]: 30: Hoare triple {11379#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11380#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:24:29,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {11380#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,152 INFO L290 TraceCheckUtils]: 32: Hoare triple {11346#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {11346#false} is VALID [2022-04-27 22:24:29,152 INFO L290 TraceCheckUtils]: 33: Hoare triple {11346#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,153 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {11346#false} {11345#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {11346#false} is VALID [2022-04-27 22:24:29,153 INFO L290 TraceCheckUtils]: 35: Hoare triple {11346#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {11346#false} is VALID [2022-04-27 22:24:29,153 INFO L272 TraceCheckUtils]: 36: Hoare triple {11346#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {11346#false} is VALID [2022-04-27 22:24:29,153 INFO L290 TraceCheckUtils]: 37: Hoare triple {11346#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {11346#false} is VALID [2022-04-27 22:24:29,153 INFO L290 TraceCheckUtils]: 38: Hoare triple {11346#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,153 INFO L290 TraceCheckUtils]: 39: Hoare triple {11346#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,153 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:29,153 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:29,153 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1892758162] [2022-04-27 22:24:29,153 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1892758162] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:29,153 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1347392543] [2022-04-27 22:24:29,153 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:24:29,153 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:29,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:29,154 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-27 22:24:29,155 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-27 22:24:29,205 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 2 check-sat command(s) [2022-04-27 22:24:29,206 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:29,206 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-27 22:24:29,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:29,217 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:29,376 INFO L272 TraceCheckUtils]: 0: Hoare triple {11345#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L290 TraceCheckUtils]: 1: Hoare triple {11345#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L290 TraceCheckUtils]: 2: Hoare triple {11345#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11345#true} {11345#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L272 TraceCheckUtils]: 4: Hoare triple {11345#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L290 TraceCheckUtils]: 5: Hoare triple {11345#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L290 TraceCheckUtils]: 6: Hoare triple {11345#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L272 TraceCheckUtils]: 7: Hoare triple {11345#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {11345#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 10: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 11: Hoare triple {11345#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 12: Hoare triple {11345#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 13: Hoare triple {11345#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 14: Hoare triple {11345#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 15: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 16: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 17: Hoare triple {11345#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 18: Hoare triple {11345#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 19: Hoare triple {11345#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {11345#true} {11345#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L290 TraceCheckUtils]: 21: Hoare triple {11345#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {11345#true} is VALID [2022-04-27 22:24:29,377 INFO L272 TraceCheckUtils]: 22: Hoare triple {11345#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,378 INFO L290 TraceCheckUtils]: 23: Hoare triple {11345#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {11376#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:24:29,378 INFO L290 TraceCheckUtils]: 24: Hoare triple {11376#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11377#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:29,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {11377#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,379 INFO L290 TraceCheckUtils]: 26: Hoare triple {11378#(<= 2 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,380 INFO L290 TraceCheckUtils]: 27: Hoare triple {11378#(<= 2 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,380 INFO L290 TraceCheckUtils]: 28: Hoare triple {11378#(<= 2 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,380 INFO L290 TraceCheckUtils]: 29: Hoare triple {11378#(<= 2 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11471#(and (<= student_version_~x~1 0) (<= 2 student_version_~i~1))} is VALID [2022-04-27 22:24:29,381 INFO L290 TraceCheckUtils]: 30: Hoare triple {11471#(and (<= student_version_~x~1 0) (<= 2 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11475#(and (<= 2 student_version_~i~1) (<= student_version_~x~1 1))} is VALID [2022-04-27 22:24:29,381 INFO L290 TraceCheckUtils]: 31: Hoare triple {11475#(and (<= 2 student_version_~i~1) (<= student_version_~x~1 1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,381 INFO L290 TraceCheckUtils]: 32: Hoare triple {11346#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {11346#false} is VALID [2022-04-27 22:24:29,381 INFO L290 TraceCheckUtils]: 33: Hoare triple {11346#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,381 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {11346#false} {11345#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {11346#false} is VALID [2022-04-27 22:24:29,381 INFO L290 TraceCheckUtils]: 35: Hoare triple {11346#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {11346#false} is VALID [2022-04-27 22:24:29,382 INFO L272 TraceCheckUtils]: 36: Hoare triple {11346#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {11346#false} is VALID [2022-04-27 22:24:29,382 INFO L290 TraceCheckUtils]: 37: Hoare triple {11346#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {11346#false} is VALID [2022-04-27 22:24:29,382 INFO L290 TraceCheckUtils]: 38: Hoare triple {11346#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,382 INFO L290 TraceCheckUtils]: 39: Hoare triple {11346#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,382 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:29,382 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:29,523 INFO L290 TraceCheckUtils]: 39: Hoare triple {11346#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,523 INFO L290 TraceCheckUtils]: 38: Hoare triple {11346#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,523 INFO L290 TraceCheckUtils]: 37: Hoare triple {11346#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {11346#false} is VALID [2022-04-27 22:24:29,523 INFO L272 TraceCheckUtils]: 36: Hoare triple {11346#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {11346#false} is VALID [2022-04-27 22:24:29,523 INFO L290 TraceCheckUtils]: 35: Hoare triple {11346#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {11346#false} is VALID [2022-04-27 22:24:29,523 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {11346#false} {11345#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {11346#false} is VALID [2022-04-27 22:24:29,523 INFO L290 TraceCheckUtils]: 33: Hoare triple {11346#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,523 INFO L290 TraceCheckUtils]: 32: Hoare triple {11346#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {11346#false} is VALID [2022-04-27 22:24:29,524 INFO L290 TraceCheckUtils]: 31: Hoare triple {11380#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {11346#false} is VALID [2022-04-27 22:24:29,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {11379#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11380#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:24:29,525 INFO L290 TraceCheckUtils]: 29: Hoare triple {11378#(<= 2 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {11379#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:24:29,525 INFO L290 TraceCheckUtils]: 28: Hoare triple {11378#(<= 2 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,525 INFO L290 TraceCheckUtils]: 27: Hoare triple {11378#(<= 2 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,525 INFO L290 TraceCheckUtils]: 26: Hoare triple {11378#(<= 2 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,526 INFO L290 TraceCheckUtils]: 25: Hoare triple {11377#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11378#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:24:29,526 INFO L290 TraceCheckUtils]: 24: Hoare triple {11376#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {11377#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:24:29,527 INFO L290 TraceCheckUtils]: 23: Hoare triple {11345#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {11376#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:24:29,527 INFO L272 TraceCheckUtils]: 22: Hoare triple {11345#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,527 INFO L290 TraceCheckUtils]: 21: Hoare triple {11345#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {11345#true} is VALID [2022-04-27 22:24:29,527 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {11345#true} {11345#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,527 INFO L290 TraceCheckUtils]: 19: Hoare triple {11345#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,527 INFO L290 TraceCheckUtils]: 18: Hoare triple {11345#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {11345#true} is VALID [2022-04-27 22:24:29,527 INFO L290 TraceCheckUtils]: 17: Hoare triple {11345#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,527 INFO L290 TraceCheckUtils]: 16: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,527 INFO L290 TraceCheckUtils]: 15: Hoare triple {11345#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 14: Hoare triple {11345#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {11345#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 12: Hoare triple {11345#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 11: Hoare triple {11345#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 10: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 9: Hoare triple {11345#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 8: Hoare triple {11345#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L272 TraceCheckUtils]: 7: Hoare triple {11345#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 6: Hoare triple {11345#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {11345#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {11345#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11345#true} {11345#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {11345#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {11345#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {11345#true} is VALID [2022-04-27 22:24:29,529 INFO L272 TraceCheckUtils]: 0: Hoare triple {11345#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {11345#true} is VALID [2022-04-27 22:24:29,529 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:29,529 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1347392543] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:29,529 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:29,529 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 10 [2022-04-27 22:24:29,529 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1709298343] [2022-04-27 22:24:29,529 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:29,529 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 40 [2022-04-27 22:24:29,530 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:29,530 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:29,558 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:29,558 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 22:24:29,558 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:29,558 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 22:24:29,558 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=59, Unknown=0, NotChecked=0, Total=90 [2022-04-27 22:24:29,558 INFO L87 Difference]: Start difference. First operand 97 states and 114 transitions. Second operand has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:30,090 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:30,090 INFO L93 Difference]: Finished difference Result 115 states and 134 transitions. [2022-04-27 22:24:30,090 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 22:24:30,090 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 40 [2022-04-27 22:24:30,091 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:30,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:30,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 59 transitions. [2022-04-27 22:24:30,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:30,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 59 transitions. [2022-04-27 22:24:30,092 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 59 transitions. [2022-04-27 22:24:30,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:30,122 INFO L225 Difference]: With dead ends: 115 [2022-04-27 22:24:30,122 INFO L226 Difference]: Without dead ends: 100 [2022-04-27 22:24:30,122 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 83 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=84, Invalid=156, Unknown=0, NotChecked=0, Total=240 [2022-04-27 22:24:30,123 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 48 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 188 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 63 SdHoareTripleChecker+Invalid, 202 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 188 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:30,123 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 63 Invalid, 202 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 188 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:24:30,124 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-27 22:24:30,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2022-04-27 22:24:30,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:30,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 100 states, 82 states have (on average 1.2195121951219512) internal successors, (100), 88 states have internal predecessors, (100), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:30,291 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 100 states, 82 states have (on average 1.2195121951219512) internal successors, (100), 88 states have internal predecessors, (100), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:30,291 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 100 states, 82 states have (on average 1.2195121951219512) internal successors, (100), 88 states have internal predecessors, (100), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:30,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:30,293 INFO L93 Difference]: Finished difference Result 100 states and 117 transitions. [2022-04-27 22:24:30,293 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 117 transitions. [2022-04-27 22:24:30,293 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:30,293 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:30,293 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 82 states have (on average 1.2195121951219512) internal successors, (100), 88 states have internal predecessors, (100), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) Second operand 100 states. [2022-04-27 22:24:30,293 INFO L87 Difference]: Start difference. First operand has 100 states, 82 states have (on average 1.2195121951219512) internal successors, (100), 88 states have internal predecessors, (100), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) Second operand 100 states. [2022-04-27 22:24:30,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:30,294 INFO L93 Difference]: Finished difference Result 100 states and 117 transitions. [2022-04-27 22:24:30,295 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 117 transitions. [2022-04-27 22:24:30,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:30,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:30,295 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:30,295 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:30,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 82 states have (on average 1.2195121951219512) internal successors, (100), 88 states have internal predecessors, (100), 8 states have call successors, (8), 5 states have call predecessors, (8), 9 states have return successors, (9), 6 states have call predecessors, (9), 6 states have call successors, (9) [2022-04-27 22:24:30,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 117 transitions. [2022-04-27 22:24:30,296 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 117 transitions. Word has length 40 [2022-04-27 22:24:30,296 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:30,296 INFO L495 AbstractCegarLoop]: Abstraction has 100 states and 117 transitions. [2022-04-27 22:24:30,296 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:30,297 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 117 transitions. [2022-04-27 22:24:30,297 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-27 22:24:30,297 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:30,297 INFO L195 NwaCegarLoop]: trace histogram [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, 1, 1, 1] [2022-04-27 22:24:30,324 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-27 22:24:30,513 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,SelfDestructingSolverStorable21 [2022-04-27 22:24:30,513 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:30,513 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:30,513 INFO L85 PathProgramCache]: Analyzing trace with hash 1580519202, now seen corresponding path program 13 times [2022-04-27 22:24:30,513 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:30,513 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1091728274] [2022-04-27 22:24:30,513 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:30,514 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:30,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:30,590 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:30,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:30,592 INFO L290 TraceCheckUtils]: 0: Hoare triple {12170#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {12133#true} is VALID [2022-04-27 22:24:30,593 INFO L290 TraceCheckUtils]: 1: Hoare triple {12133#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:30,593 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {12133#true} {12133#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:30,593 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:30,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:30,694 INFO L290 TraceCheckUtils]: 0: Hoare triple {12133#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:30,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:30,695 INFO L290 TraceCheckUtils]: 2: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:30,695 INFO L290 TraceCheckUtils]: 3: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:30,696 INFO L290 TraceCheckUtils]: 4: Hoare triple {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:30,696 INFO L290 TraceCheckUtils]: 5: Hoare triple {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:30,696 INFO L290 TraceCheckUtils]: 6: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:30,697 INFO L290 TraceCheckUtils]: 7: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12175#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} is VALID [2022-04-27 22:24:30,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {12175#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:30,698 INFO L290 TraceCheckUtils]: 9: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:30,698 INFO L290 TraceCheckUtils]: 10: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:30,698 INFO L290 TraceCheckUtils]: 11: Hoare triple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:30,699 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {12133#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {12151#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:24:30,699 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:24:30,703 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:30,842 INFO L290 TraceCheckUtils]: 0: Hoare triple {12133#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:30,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:30,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:30,843 INFO L290 TraceCheckUtils]: 3: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:30,844 INFO L290 TraceCheckUtils]: 4: Hoare triple {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:30,844 INFO L290 TraceCheckUtils]: 5: Hoare triple {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:30,844 INFO L290 TraceCheckUtils]: 6: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:30,845 INFO L290 TraceCheckUtils]: 7: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12182#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} is VALID [2022-04-27 22:24:30,845 INFO L290 TraceCheckUtils]: 8: Hoare triple {12182#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:30,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:30,846 INFO L290 TraceCheckUtils]: 10: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:30,846 INFO L290 TraceCheckUtils]: 11: Hoare triple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:30,847 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {12166#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:30,847 INFO L272 TraceCheckUtils]: 0: Hoare triple {12133#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12170#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:30,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {12170#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {12133#true} is VALID [2022-04-27 22:24:30,847 INFO L290 TraceCheckUtils]: 2: Hoare triple {12133#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:30,848 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12133#true} {12133#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:30,848 INFO L272 TraceCheckUtils]: 4: Hoare triple {12133#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:30,848 INFO L290 TraceCheckUtils]: 5: Hoare triple {12133#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:30,848 INFO L290 TraceCheckUtils]: 6: Hoare triple {12133#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:30,848 INFO L272 TraceCheckUtils]: 7: Hoare triple {12133#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:30,848 INFO L290 TraceCheckUtils]: 8: Hoare triple {12133#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:30,849 INFO L290 TraceCheckUtils]: 9: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:30,849 INFO L290 TraceCheckUtils]: 10: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:30,849 INFO L290 TraceCheckUtils]: 11: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:30,850 INFO L290 TraceCheckUtils]: 12: Hoare triple {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:30,850 INFO L290 TraceCheckUtils]: 13: Hoare triple {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:30,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:30,851 INFO L290 TraceCheckUtils]: 15: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12175#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} is VALID [2022-04-27 22:24:30,851 INFO L290 TraceCheckUtils]: 16: Hoare triple {12175#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:30,851 INFO L290 TraceCheckUtils]: 17: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:30,852 INFO L290 TraceCheckUtils]: 18: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:30,852 INFO L290 TraceCheckUtils]: 19: Hoare triple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:30,853 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {12133#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {12151#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:24:30,853 INFO L290 TraceCheckUtils]: 21: Hoare triple {12151#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} is VALID [2022-04-27 22:24:30,853 INFO L272 TraceCheckUtils]: 22: Hoare triple {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:30,853 INFO L290 TraceCheckUtils]: 23: Hoare triple {12133#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:30,854 INFO L290 TraceCheckUtils]: 24: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:30,854 INFO L290 TraceCheckUtils]: 25: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:30,854 INFO L290 TraceCheckUtils]: 26: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:30,855 INFO L290 TraceCheckUtils]: 27: Hoare triple {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:30,855 INFO L290 TraceCheckUtils]: 28: Hoare triple {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:30,855 INFO L290 TraceCheckUtils]: 29: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:30,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12182#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} is VALID [2022-04-27 22:24:30,856 INFO L290 TraceCheckUtils]: 31: Hoare triple {12182#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:30,856 INFO L290 TraceCheckUtils]: 32: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:30,857 INFO L290 TraceCheckUtils]: 33: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:30,857 INFO L290 TraceCheckUtils]: 34: Hoare triple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:30,858 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {12166#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:30,858 INFO L290 TraceCheckUtils]: 36: Hoare triple {12166#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {12167#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:30,859 INFO L272 TraceCheckUtils]: 37: Hoare triple {12167#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {12168#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:24:30,859 INFO L290 TraceCheckUtils]: 38: Hoare triple {12168#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {12169#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:24:30,859 INFO L290 TraceCheckUtils]: 39: Hoare triple {12169#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {12134#false} is VALID [2022-04-27 22:24:30,859 INFO L290 TraceCheckUtils]: 40: Hoare triple {12134#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12134#false} is VALID [2022-04-27 22:24:30,859 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:30,859 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:30,860 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1091728274] [2022-04-27 22:24:30,860 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1091728274] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:30,860 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [853913134] [2022-04-27 22:24:30,860 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:24:30,860 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:30,860 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:30,861 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-27 22:24:30,862 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-27 22:24:30,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:30,910 INFO L263 TraceCheckSpWp]: Trace formula consists of 198 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-27 22:24:30,918 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:30,918 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:31,399 INFO L272 TraceCheckUtils]: 0: Hoare triple {12133#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,400 INFO L290 TraceCheckUtils]: 1: Hoare triple {12133#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {12133#true} is VALID [2022-04-27 22:24:31,400 INFO L290 TraceCheckUtils]: 2: Hoare triple {12133#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,400 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12133#true} {12133#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,400 INFO L272 TraceCheckUtils]: 4: Hoare triple {12133#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,400 INFO L290 TraceCheckUtils]: 5: Hoare triple {12133#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:31,400 INFO L290 TraceCheckUtils]: 6: Hoare triple {12133#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,400 INFO L272 TraceCheckUtils]: 7: Hoare triple {12133#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:31,401 INFO L290 TraceCheckUtils]: 8: Hoare triple {12133#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:31,401 INFO L290 TraceCheckUtils]: 9: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:31,401 INFO L290 TraceCheckUtils]: 10: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:31,402 INFO L290 TraceCheckUtils]: 11: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:31,402 INFO L290 TraceCheckUtils]: 12: Hoare triple {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:31,403 INFO L290 TraceCheckUtils]: 13: Hoare triple {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:31,403 INFO L290 TraceCheckUtils]: 14: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:31,404 INFO L290 TraceCheckUtils]: 15: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12233#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:31,404 INFO L290 TraceCheckUtils]: 16: Hoare triple {12233#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:31,404 INFO L290 TraceCheckUtils]: 17: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:31,405 INFO L290 TraceCheckUtils]: 18: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:31,405 INFO L290 TraceCheckUtils]: 19: Hoare triple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:31,406 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {12133#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {12151#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:24:31,406 INFO L290 TraceCheckUtils]: 21: Hoare triple {12151#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} is VALID [2022-04-27 22:24:31,406 INFO L272 TraceCheckUtils]: 22: Hoare triple {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:31,407 INFO L290 TraceCheckUtils]: 23: Hoare triple {12133#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:31,407 INFO L290 TraceCheckUtils]: 24: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:31,407 INFO L290 TraceCheckUtils]: 25: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:31,408 INFO L290 TraceCheckUtils]: 26: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:31,408 INFO L290 TraceCheckUtils]: 27: Hoare triple {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:31,409 INFO L290 TraceCheckUtils]: 28: Hoare triple {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:31,409 INFO L290 TraceCheckUtils]: 29: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:31,410 INFO L290 TraceCheckUtils]: 30: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12279#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:31,410 INFO L290 TraceCheckUtils]: 31: Hoare triple {12279#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:31,411 INFO L290 TraceCheckUtils]: 32: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:31,411 INFO L290 TraceCheckUtils]: 33: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:31,411 INFO L290 TraceCheckUtils]: 34: Hoare triple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:31,412 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {12295#(and (<= 3 main_~n_stones1~0) (<= |main_#t~ret9| 3) (<= main_~n_stones1~0 3) (<= 3 |main_#t~ret9|))} is VALID [2022-04-27 22:24:31,412 INFO L290 TraceCheckUtils]: 36: Hoare triple {12295#(and (<= 3 main_~n_stones1~0) (<= |main_#t~ret9| 3) (<= main_~n_stones1~0 3) (<= 3 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {12299#(and (<= main_~n_stones2~0 3) (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3) (<= 3 main_~n_stones2~0))} is VALID [2022-04-27 22:24:31,413 INFO L272 TraceCheckUtils]: 37: Hoare triple {12299#(and (<= main_~n_stones2~0 3) (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3) (<= 3 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {12303#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:31,413 INFO L290 TraceCheckUtils]: 38: Hoare triple {12303#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {12307#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:31,414 INFO L290 TraceCheckUtils]: 39: Hoare triple {12307#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {12134#false} is VALID [2022-04-27 22:24:31,414 INFO L290 TraceCheckUtils]: 40: Hoare triple {12134#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12134#false} is VALID [2022-04-27 22:24:31,414 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:31,414 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:31,802 INFO L290 TraceCheckUtils]: 40: Hoare triple {12134#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12134#false} is VALID [2022-04-27 22:24:31,803 INFO L290 TraceCheckUtils]: 39: Hoare triple {12307#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {12134#false} is VALID [2022-04-27 22:24:31,803 INFO L290 TraceCheckUtils]: 38: Hoare triple {12303#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {12307#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:31,822 INFO L272 TraceCheckUtils]: 37: Hoare triple {12167#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {12303#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:31,823 INFO L290 TraceCheckUtils]: 36: Hoare triple {12166#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {12167#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:31,823 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {12166#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:31,824 INFO L290 TraceCheckUtils]: 34: Hoare triple {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:31,824 INFO L290 TraceCheckUtils]: 33: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {12184#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:24:31,824 INFO L290 TraceCheckUtils]: 32: Hoare triple {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:31,825 INFO L290 TraceCheckUtils]: 31: Hoare triple {12182#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12183#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:24:31,825 INFO L290 TraceCheckUtils]: 30: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {12182#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} is VALID [2022-04-27 22:24:31,825 INFO L290 TraceCheckUtils]: 29: Hoare triple {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:31,826 INFO L290 TraceCheckUtils]: 28: Hoare triple {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12181#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:31,826 INFO L290 TraceCheckUtils]: 27: Hoare triple {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12180#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:31,826 INFO L290 TraceCheckUtils]: 26: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {12179#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:31,827 INFO L290 TraceCheckUtils]: 25: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:31,827 INFO L290 TraceCheckUtils]: 24: Hoare triple {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:31,827 INFO L290 TraceCheckUtils]: 23: Hoare triple {12133#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {12178#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:31,828 INFO L272 TraceCheckUtils]: 22: Hoare triple {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:31,828 INFO L290 TraceCheckUtils]: 21: Hoare triple {12151#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {12152#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} is VALID [2022-04-27 22:24:31,828 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {12133#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {12151#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:24:31,829 INFO L290 TraceCheckUtils]: 19: Hoare triple {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:31,829 INFO L290 TraceCheckUtils]: 18: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {12177#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:24:31,829 INFO L290 TraceCheckUtils]: 17: Hoare triple {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:31,830 INFO L290 TraceCheckUtils]: 16: Hoare triple {12175#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12176#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:24:31,830 INFO L290 TraceCheckUtils]: 15: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {12175#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} is VALID [2022-04-27 22:24:31,830 INFO L290 TraceCheckUtils]: 14: Hoare triple {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:31,831 INFO L290 TraceCheckUtils]: 13: Hoare triple {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12174#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:31,831 INFO L290 TraceCheckUtils]: 12: Hoare triple {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:31,832 INFO L290 TraceCheckUtils]: 11: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {12172#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:31,832 INFO L290 TraceCheckUtils]: 10: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:31,832 INFO L290 TraceCheckUtils]: 9: Hoare triple {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:31,833 INFO L290 TraceCheckUtils]: 8: Hoare triple {12133#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {12171#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:31,833 INFO L272 TraceCheckUtils]: 7: Hoare triple {12133#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L290 TraceCheckUtils]: 6: Hoare triple {12133#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L290 TraceCheckUtils]: 5: Hoare triple {12133#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L272 TraceCheckUtils]: 4: Hoare triple {12133#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12133#true} {12133#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L290 TraceCheckUtils]: 2: Hoare triple {12133#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {12133#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L272 TraceCheckUtils]: 0: Hoare triple {12133#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12133#true} is VALID [2022-04-27 22:24:31,833 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:31,833 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [853913134] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:31,834 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:31,834 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 22, 22] total 29 [2022-04-27 22:24:31,834 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1354146384] [2022-04-27 22:24:31,834 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:31,834 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 41 [2022-04-27 22:24:31,834 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:31,834 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:31,862 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-27 22:24:31,862 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-04-27 22:24:31,863 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:31,863 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-04-27 22:24:31,863 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=747, Unknown=0, NotChecked=0, Total=812 [2022-04-27 22:24:31,863 INFO L87 Difference]: Start difference. First operand 100 states and 117 transitions. Second operand has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:34,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:34,844 INFO L93 Difference]: Finished difference Result 140 states and 164 transitions. [2022-04-27 22:24:34,844 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-27 22:24:34,844 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 41 [2022-04-27 22:24:34,845 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:34,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:34,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 110 transitions. [2022-04-27 22:24:34,846 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:34,847 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 110 transitions. [2022-04-27 22:24:34,847 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 110 transitions. [2022-04-27 22:24:34,934 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-27 22:24:34,935 INFO L225 Difference]: With dead ends: 140 [2022-04-27 22:24:34,935 INFO L226 Difference]: Without dead ends: 134 [2022-04-27 22:24:34,936 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 76 SyntacticMatches, 5 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 343 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=181, Invalid=2269, Unknown=0, NotChecked=0, Total=2450 [2022-04-27 22:24:34,936 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 103 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 1696 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 106 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 1730 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 1696 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:34,936 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [106 Valid, 173 Invalid, 1730 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 1696 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-27 22:24:34,937 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 134 states. [2022-04-27 22:24:35,194 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 134 to 116. [2022-04-27 22:24:35,194 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:35,195 INFO L82 GeneralOperation]: Start isEquivalent. First operand 134 states. Second operand has 116 states, 95 states have (on average 1.2105263157894737) internal successors, (115), 103 states have internal predecessors, (115), 9 states have call successors, (9), 5 states have call predecessors, (9), 11 states have return successors, (12), 7 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-27 22:24:35,195 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand has 116 states, 95 states have (on average 1.2105263157894737) internal successors, (115), 103 states have internal predecessors, (115), 9 states have call successors, (9), 5 states have call predecessors, (9), 11 states have return successors, (12), 7 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-27 22:24:35,195 INFO L87 Difference]: Start difference. First operand 134 states. Second operand has 116 states, 95 states have (on average 1.2105263157894737) internal successors, (115), 103 states have internal predecessors, (115), 9 states have call successors, (9), 5 states have call predecessors, (9), 11 states have return successors, (12), 7 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-27 22:24:35,197 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:35,197 INFO L93 Difference]: Finished difference Result 134 states and 158 transitions. [2022-04-27 22:24:35,197 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 158 transitions. [2022-04-27 22:24:35,197 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:35,197 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:35,197 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 95 states have (on average 1.2105263157894737) internal successors, (115), 103 states have internal predecessors, (115), 9 states have call successors, (9), 5 states have call predecessors, (9), 11 states have return successors, (12), 7 states have call predecessors, (12), 7 states have call successors, (12) Second operand 134 states. [2022-04-27 22:24:35,197 INFO L87 Difference]: Start difference. First operand has 116 states, 95 states have (on average 1.2105263157894737) internal successors, (115), 103 states have internal predecessors, (115), 9 states have call successors, (9), 5 states have call predecessors, (9), 11 states have return successors, (12), 7 states have call predecessors, (12), 7 states have call successors, (12) Second operand 134 states. [2022-04-27 22:24:35,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:35,199 INFO L93 Difference]: Finished difference Result 134 states and 158 transitions. [2022-04-27 22:24:35,199 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 158 transitions. [2022-04-27 22:24:35,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:35,200 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:35,200 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:35,200 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:35,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 95 states have (on average 1.2105263157894737) internal successors, (115), 103 states have internal predecessors, (115), 9 states have call successors, (9), 5 states have call predecessors, (9), 11 states have return successors, (12), 7 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-27 22:24:35,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 136 transitions. [2022-04-27 22:24:35,202 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 136 transitions. Word has length 41 [2022-04-27 22:24:35,202 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:35,202 INFO L495 AbstractCegarLoop]: Abstraction has 116 states and 136 transitions. [2022-04-27 22:24:35,202 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:35,202 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 136 transitions. [2022-04-27 22:24:35,202 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-27 22:24:35,202 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:35,202 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:35,219 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-27 22:24:35,411 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,SelfDestructingSolverStorable22 [2022-04-27 22:24:35,411 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:35,412 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:35,412 INFO L85 PathProgramCache]: Analyzing trace with hash -39073241, now seen corresponding path program 14 times [2022-04-27 22:24:35,412 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:35,412 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1558991097] [2022-04-27 22:24:35,412 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:35,412 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:35,427 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:35,488 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:35,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:35,491 INFO L290 TraceCheckUtils]: 0: Hoare triple {13141#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {13104#true} is VALID [2022-04-27 22:24:35,491 INFO L290 TraceCheckUtils]: 1: Hoare triple {13104#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:35,491 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {13104#true} {13104#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:35,491 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:35,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:35,582 INFO L290 TraceCheckUtils]: 0: Hoare triple {13104#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,583 INFO L290 TraceCheckUtils]: 1: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,583 INFO L290 TraceCheckUtils]: 2: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,583 INFO L290 TraceCheckUtils]: 3: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,584 INFO L290 TraceCheckUtils]: 4: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:35,584 INFO L290 TraceCheckUtils]: 5: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:35,585 INFO L290 TraceCheckUtils]: 6: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13144#(and (<= 2 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 2))} is VALID [2022-04-27 22:24:35,585 INFO L290 TraceCheckUtils]: 7: Hoare triple {13144#(and (<= 2 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13145#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:24:35,586 INFO L290 TraceCheckUtils]: 8: Hoare triple {13145#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:35,586 INFO L290 TraceCheckUtils]: 9: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:35,586 INFO L290 TraceCheckUtils]: 10: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:35,587 INFO L290 TraceCheckUtils]: 11: Hoare triple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:35,587 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {13104#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {13122#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:35,588 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:24:35,592 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:35,723 INFO L290 TraceCheckUtils]: 0: Hoare triple {13104#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,723 INFO L290 TraceCheckUtils]: 1: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,724 INFO L290 TraceCheckUtils]: 2: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,724 INFO L290 TraceCheckUtils]: 3: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,725 INFO L290 TraceCheckUtils]: 4: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:35,725 INFO L290 TraceCheckUtils]: 5: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:35,725 INFO L290 TraceCheckUtils]: 6: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13150#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 2) (<= 2 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:24:35,726 INFO L290 TraceCheckUtils]: 7: Hoare triple {13150#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 2) (<= 2 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13151#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} is VALID [2022-04-27 22:24:35,726 INFO L290 TraceCheckUtils]: 8: Hoare triple {13151#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:35,727 INFO L290 TraceCheckUtils]: 9: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:35,727 INFO L290 TraceCheckUtils]: 10: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:35,727 INFO L290 TraceCheckUtils]: 11: Hoare triple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:35,729 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {13137#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:35,729 INFO L272 TraceCheckUtils]: 0: Hoare triple {13104#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13141#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:35,729 INFO L290 TraceCheckUtils]: 1: Hoare triple {13141#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {13104#true} is VALID [2022-04-27 22:24:35,729 INFO L290 TraceCheckUtils]: 2: Hoare triple {13104#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:35,729 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13104#true} {13104#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:35,730 INFO L272 TraceCheckUtils]: 4: Hoare triple {13104#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:35,730 INFO L290 TraceCheckUtils]: 5: Hoare triple {13104#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:35,730 INFO L290 TraceCheckUtils]: 6: Hoare triple {13104#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:35,730 INFO L272 TraceCheckUtils]: 7: Hoare triple {13104#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:35,730 INFO L290 TraceCheckUtils]: 8: Hoare triple {13104#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,731 INFO L290 TraceCheckUtils]: 9: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,731 INFO L290 TraceCheckUtils]: 10: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,731 INFO L290 TraceCheckUtils]: 11: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:35,732 INFO L290 TraceCheckUtils]: 12: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:35,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:35,732 INFO L290 TraceCheckUtils]: 14: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13144#(and (<= 2 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 2))} is VALID [2022-04-27 22:24:35,733 INFO L290 TraceCheckUtils]: 15: Hoare triple {13144#(and (<= 2 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13145#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:24:35,734 INFO L290 TraceCheckUtils]: 16: Hoare triple {13145#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:35,734 INFO L290 TraceCheckUtils]: 17: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:35,734 INFO L290 TraceCheckUtils]: 18: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:35,735 INFO L290 TraceCheckUtils]: 19: Hoare triple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:35,735 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {13104#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {13122#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:35,736 INFO L290 TraceCheckUtils]: 21: Hoare triple {13122#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} is VALID [2022-04-27 22:24:35,736 INFO L272 TraceCheckUtils]: 22: Hoare triple {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:35,736 INFO L290 TraceCheckUtils]: 23: Hoare triple {13104#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,737 INFO L290 TraceCheckUtils]: 24: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,737 INFO L290 TraceCheckUtils]: 25: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,737 INFO L290 TraceCheckUtils]: 26: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:35,738 INFO L290 TraceCheckUtils]: 27: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:35,738 INFO L290 TraceCheckUtils]: 28: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:35,739 INFO L290 TraceCheckUtils]: 29: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13150#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 2) (<= 2 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:24:35,739 INFO L290 TraceCheckUtils]: 30: Hoare triple {13150#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 2) (<= 2 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13151#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} is VALID [2022-04-27 22:24:35,740 INFO L290 TraceCheckUtils]: 31: Hoare triple {13151#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:35,740 INFO L290 TraceCheckUtils]: 32: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:35,740 INFO L290 TraceCheckUtils]: 33: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:35,741 INFO L290 TraceCheckUtils]: 34: Hoare triple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:35,742 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {13137#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:35,742 INFO L290 TraceCheckUtils]: 36: Hoare triple {13137#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {13138#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:35,743 INFO L272 TraceCheckUtils]: 37: Hoare triple {13138#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {13139#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:24:35,743 INFO L290 TraceCheckUtils]: 38: Hoare triple {13139#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {13140#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:24:35,743 INFO L290 TraceCheckUtils]: 39: Hoare triple {13140#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {13105#false} is VALID [2022-04-27 22:24:35,743 INFO L290 TraceCheckUtils]: 40: Hoare triple {13105#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13105#false} is VALID [2022-04-27 22:24:35,744 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:24:35,744 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:35,744 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1558991097] [2022-04-27 22:24:35,744 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1558991097] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:35,744 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1515834007] [2022-04-27 22:24:35,744 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:24:35,744 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:35,744 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:35,745 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-27 22:24:35,746 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-27 22:24:35,793 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:24:35,794 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:35,794 INFO L263 TraceCheckSpWp]: Trace formula consists of 198 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-27 22:24:35,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:35,802 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:36,403 INFO L272 TraceCheckUtils]: 0: Hoare triple {13104#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,403 INFO L290 TraceCheckUtils]: 1: Hoare triple {13104#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {13104#true} is VALID [2022-04-27 22:24:36,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {13104#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,404 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13104#true} {13104#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,404 INFO L272 TraceCheckUtils]: 4: Hoare triple {13104#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,404 INFO L290 TraceCheckUtils]: 5: Hoare triple {13104#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:36,404 INFO L290 TraceCheckUtils]: 6: Hoare triple {13104#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,404 INFO L272 TraceCheckUtils]: 7: Hoare triple {13104#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:36,404 INFO L290 TraceCheckUtils]: 8: Hoare triple {13104#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,405 INFO L290 TraceCheckUtils]: 9: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,405 INFO L290 TraceCheckUtils]: 10: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,405 INFO L290 TraceCheckUtils]: 11: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,406 INFO L290 TraceCheckUtils]: 12: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:36,406 INFO L290 TraceCheckUtils]: 13: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:36,407 INFO L290 TraceCheckUtils]: 14: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13199#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:36,407 INFO L290 TraceCheckUtils]: 15: Hoare triple {13199#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13203#(and (<= 1 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:36,408 INFO L290 TraceCheckUtils]: 16: Hoare triple {13203#(and (<= 1 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:36,408 INFO L290 TraceCheckUtils]: 17: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:36,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:36,409 INFO L290 TraceCheckUtils]: 19: Hoare triple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:36,409 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {13104#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {13122#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:36,410 INFO L290 TraceCheckUtils]: 21: Hoare triple {13122#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} is VALID [2022-04-27 22:24:36,410 INFO L272 TraceCheckUtils]: 22: Hoare triple {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:36,410 INFO L290 TraceCheckUtils]: 23: Hoare triple {13104#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,411 INFO L290 TraceCheckUtils]: 24: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,411 INFO L290 TraceCheckUtils]: 25: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,411 INFO L290 TraceCheckUtils]: 26: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,412 INFO L290 TraceCheckUtils]: 27: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:36,412 INFO L290 TraceCheckUtils]: 28: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:36,412 INFO L290 TraceCheckUtils]: 29: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13246#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:36,413 INFO L290 TraceCheckUtils]: 30: Hoare triple {13246#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13250#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:24:36,413 INFO L290 TraceCheckUtils]: 31: Hoare triple {13250#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:36,414 INFO L290 TraceCheckUtils]: 32: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:36,414 INFO L290 TraceCheckUtils]: 33: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:36,414 INFO L290 TraceCheckUtils]: 34: Hoare triple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:36,415 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {13266#(and (<= |main_#t~ret9| 2) (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2) (<= 2 |main_#t~ret9|))} is VALID [2022-04-27 22:24:36,416 INFO L290 TraceCheckUtils]: 36: Hoare triple {13266#(and (<= |main_#t~ret9| 2) (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2) (<= 2 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {13270#(and (<= 2 main_~n_stones1~0) (<= 2 main_~n_stones2~0) (<= main_~n_stones1~0 2) (<= main_~n_stones2~0 2))} is VALID [2022-04-27 22:24:36,416 INFO L272 TraceCheckUtils]: 37: Hoare triple {13270#(and (<= 2 main_~n_stones1~0) (<= 2 main_~n_stones2~0) (<= main_~n_stones1~0 2) (<= main_~n_stones2~0 2))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {13274#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:36,417 INFO L290 TraceCheckUtils]: 38: Hoare triple {13274#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {13278#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:36,417 INFO L290 TraceCheckUtils]: 39: Hoare triple {13278#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {13105#false} is VALID [2022-04-27 22:24:36,417 INFO L290 TraceCheckUtils]: 40: Hoare triple {13105#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13105#false} is VALID [2022-04-27 22:24:36,417 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:24:36,417 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:36,832 INFO L290 TraceCheckUtils]: 40: Hoare triple {13105#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13105#false} is VALID [2022-04-27 22:24:36,833 INFO L290 TraceCheckUtils]: 39: Hoare triple {13278#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {13105#false} is VALID [2022-04-27 22:24:36,833 INFO L290 TraceCheckUtils]: 38: Hoare triple {13274#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {13278#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:36,833 INFO L272 TraceCheckUtils]: 37: Hoare triple {13138#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {13274#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:36,834 INFO L290 TraceCheckUtils]: 36: Hoare triple {13137#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {13138#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:36,835 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {13137#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:36,835 INFO L290 TraceCheckUtils]: 34: Hoare triple {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:36,835 INFO L290 TraceCheckUtils]: 33: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {13153#(and (<= |student_version_#res| 2) (<= 2 |student_version_#res|))} is VALID [2022-04-27 22:24:36,836 INFO L290 TraceCheckUtils]: 32: Hoare triple {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:36,836 INFO L290 TraceCheckUtils]: 31: Hoare triple {13151#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13152#(and (<= student_version_~y~1 2) (<= 2 student_version_~y~1))} is VALID [2022-04-27 22:24:36,837 INFO L290 TraceCheckUtils]: 30: Hoare triple {13150#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 2) (<= 2 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13151#(and (<= 2 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 2))} is VALID [2022-04-27 22:24:36,837 INFO L290 TraceCheckUtils]: 29: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {13150#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 2) (<= 2 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:24:36,838 INFO L290 TraceCheckUtils]: 28: Hoare triple {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:36,838 INFO L290 TraceCheckUtils]: 27: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {13149#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:36,838 INFO L290 TraceCheckUtils]: 26: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,839 INFO L290 TraceCheckUtils]: 25: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,840 INFO L290 TraceCheckUtils]: 23: Hoare triple {13104#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {13148#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:36,840 INFO L272 TraceCheckUtils]: 22: Hoare triple {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:36,840 INFO L290 TraceCheckUtils]: 21: Hoare triple {13122#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {13123#(and (<= 2 main_~n_stones1~0) (<= main_~n_stones1~0 2))} is VALID [2022-04-27 22:24:36,841 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} {13104#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {13122#(and (<= 2 |main_#t~ret8|) (<= |main_#t~ret8| 2))} is VALID [2022-04-27 22:24:36,841 INFO L290 TraceCheckUtils]: 19: Hoare triple {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:36,841 INFO L290 TraceCheckUtils]: 18: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {13147#(and (<= |correct_version_#res| 2) (<= 2 |correct_version_#res|))} is VALID [2022-04-27 22:24:36,842 INFO L290 TraceCheckUtils]: 17: Hoare triple {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:36,842 INFO L290 TraceCheckUtils]: 16: Hoare triple {13145#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13146#(and (<= correct_version_~y~0 2) (<= 2 correct_version_~y~0))} is VALID [2022-04-27 22:24:36,843 INFO L290 TraceCheckUtils]: 15: Hoare triple {13144#(and (<= 2 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13145#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 2) (<= 2 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:24:36,843 INFO L290 TraceCheckUtils]: 14: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {13144#(and (<= 2 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 2))} is VALID [2022-04-27 22:24:36,844 INFO L290 TraceCheckUtils]: 13: Hoare triple {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:36,844 INFO L290 TraceCheckUtils]: 12: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {13143#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:36,844 INFO L290 TraceCheckUtils]: 11: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,845 INFO L290 TraceCheckUtils]: 10: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,845 INFO L290 TraceCheckUtils]: 9: Hoare triple {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {13104#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {13142#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:36,846 INFO L272 TraceCheckUtils]: 7: Hoare triple {13104#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L290 TraceCheckUtils]: 6: Hoare triple {13104#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L290 TraceCheckUtils]: 5: Hoare triple {13104#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L272 TraceCheckUtils]: 4: Hoare triple {13104#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13104#true} {13104#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {13104#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L290 TraceCheckUtils]: 1: Hoare triple {13104#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L272 TraceCheckUtils]: 0: Hoare triple {13104#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13104#true} is VALID [2022-04-27 22:24:36,846 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:24:36,847 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1515834007] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:36,847 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:36,847 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 20, 20] total 29 [2022-04-27 22:24:36,847 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [330971778] [2022-04-27 22:24:36,847 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:36,847 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 41 [2022-04-27 22:24:36,847 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:36,848 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:36,882 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-27 22:24:36,882 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-04-27 22:24:36,882 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:36,882 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-04-27 22:24:36,882 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=743, Unknown=0, NotChecked=0, Total=812 [2022-04-27 22:24:36,882 INFO L87 Difference]: Start difference. First operand 116 states and 136 transitions. Second operand has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:39,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:39,026 INFO L93 Difference]: Finished difference Result 134 states and 157 transitions. [2022-04-27 22:24:39,026 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-27 22:24:39,026 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 41 [2022-04-27 22:24:39,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:39,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:39,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 80 transitions. [2022-04-27 22:24:39,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:39,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 80 transitions. [2022-04-27 22:24:39,030 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 80 transitions. [2022-04-27 22:24:39,105 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:39,107 INFO L225 Difference]: With dead ends: 134 [2022-04-27 22:24:39,107 INFO L226 Difference]: Without dead ends: 128 [2022-04-27 22:24:39,108 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 70 SyntacticMatches, 9 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 362 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=183, Invalid=2073, Unknown=0, NotChecked=0, Total=2256 [2022-04-27 22:24:39,108 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 56 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 1125 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 1151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 1125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:39,109 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 151 Invalid, 1151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 1125 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-27 22:24:39,109 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-27 22:24:39,358 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 126. [2022-04-27 22:24:39,358 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:39,359 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 126 states, 102 states have (on average 1.2156862745098038) internal successors, (124), 112 states have internal predecessors, (124), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:39,359 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 126 states, 102 states have (on average 1.2156862745098038) internal successors, (124), 112 states have internal predecessors, (124), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:39,359 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 126 states, 102 states have (on average 1.2156862745098038) internal successors, (124), 112 states have internal predecessors, (124), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:39,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:39,361 INFO L93 Difference]: Finished difference Result 128 states and 151 transitions. [2022-04-27 22:24:39,361 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 151 transitions. [2022-04-27 22:24:39,362 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:39,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:39,362 INFO L74 IsIncluded]: Start isIncluded. First operand has 126 states, 102 states have (on average 1.2156862745098038) internal successors, (124), 112 states have internal predecessors, (124), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) Second operand 128 states. [2022-04-27 22:24:39,362 INFO L87 Difference]: Start difference. First operand has 126 states, 102 states have (on average 1.2156862745098038) internal successors, (124), 112 states have internal predecessors, (124), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) Second operand 128 states. [2022-04-27 22:24:39,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:39,364 INFO L93 Difference]: Finished difference Result 128 states and 151 transitions. [2022-04-27 22:24:39,364 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 151 transitions. [2022-04-27 22:24:39,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:39,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:39,364 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:39,364 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:39,364 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 126 states, 102 states have (on average 1.2156862745098038) internal successors, (124), 112 states have internal predecessors, (124), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:39,366 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 126 states to 126 states and 149 transitions. [2022-04-27 22:24:39,366 INFO L78 Accepts]: Start accepts. Automaton has 126 states and 149 transitions. Word has length 41 [2022-04-27 22:24:39,366 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:39,366 INFO L495 AbstractCegarLoop]: Abstraction has 126 states and 149 transitions. [2022-04-27 22:24:39,366 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 26 states have (on average 1.5769230769230769) internal successors, (41), 23 states have internal predecessors, (41), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:39,366 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 149 transitions. [2022-04-27 22:24:39,367 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 22:24:39,367 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:39,367 INFO L195 NwaCegarLoop]: trace histogram [4, 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, 1, 1, 1] [2022-04-27 22:24:39,384 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-27 22:24:39,580 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:39,580 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:39,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:39,580 INFO L85 PathProgramCache]: Analyzing trace with hash -674137827, now seen corresponding path program 15 times [2022-04-27 22:24:39,581 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:39,581 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [54287387] [2022-04-27 22:24:39,581 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:39,581 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:39,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:39,612 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:39,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:39,617 INFO L290 TraceCheckUtils]: 0: Hoare triple {14096#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {14063#true} is VALID [2022-04-27 22:24:39,618 INFO L290 TraceCheckUtils]: 1: Hoare triple {14063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:39,618 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {14063#true} {14063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:39,618 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:39,623 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:39,695 INFO L290 TraceCheckUtils]: 0: Hoare triple {14063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:39,695 INFO L290 TraceCheckUtils]: 1: Hoare triple {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:39,696 INFO L290 TraceCheckUtils]: 2: Hoare triple {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:39,696 INFO L290 TraceCheckUtils]: 3: Hoare triple {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14098#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:24:39,697 INFO L290 TraceCheckUtils]: 4: Hoare triple {14098#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14099#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:39,697 INFO L290 TraceCheckUtils]: 5: Hoare triple {14099#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14100#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:39,698 INFO L290 TraceCheckUtils]: 6: Hoare triple {14100#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,698 INFO L290 TraceCheckUtils]: 7: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,698 INFO L290 TraceCheckUtils]: 8: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,699 INFO L290 TraceCheckUtils]: 9: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,699 INFO L290 TraceCheckUtils]: 10: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,699 INFO L290 TraceCheckUtils]: 11: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,700 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} {14063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {14081#(<= main_~m~0 (* main_~a~0 3))} is VALID [2022-04-27 22:24:39,700 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:24:39,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:39,815 INFO L290 TraceCheckUtils]: 0: Hoare triple {14063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,817 INFO L290 TraceCheckUtils]: 3: Hoare triple {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14103#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:39,817 INFO L290 TraceCheckUtils]: 4: Hoare triple {14103#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14104#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,818 INFO L290 TraceCheckUtils]: 5: Hoare triple {14104#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14105#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,819 INFO L290 TraceCheckUtils]: 6: Hoare triple {14105#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14106#(and (<= (+ (* |student_version_#in~a| 3) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,819 INFO L290 TraceCheckUtils]: 7: Hoare triple {14106#(and (<= (+ (* |student_version_#in~a| 3) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,819 INFO L290 TraceCheckUtils]: 8: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,820 INFO L290 TraceCheckUtils]: 9: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,820 INFO L290 TraceCheckUtils]: 10: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,820 INFO L290 TraceCheckUtils]: 11: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,820 INFO L290 TraceCheckUtils]: 12: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,822 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} {14081#(<= main_~m~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {14064#false} is VALID [2022-04-27 22:24:39,822 INFO L272 TraceCheckUtils]: 0: Hoare triple {14063#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14096#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:39,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {14096#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {14063#true} is VALID [2022-04-27 22:24:39,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {14063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:39,823 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14063#true} {14063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:39,823 INFO L272 TraceCheckUtils]: 4: Hoare triple {14063#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:39,823 INFO L290 TraceCheckUtils]: 5: Hoare triple {14063#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:39,823 INFO L290 TraceCheckUtils]: 6: Hoare triple {14063#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:39,823 INFO L272 TraceCheckUtils]: 7: Hoare triple {14063#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:39,823 INFO L290 TraceCheckUtils]: 8: Hoare triple {14063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:39,824 INFO L290 TraceCheckUtils]: 9: Hoare triple {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:39,824 INFO L290 TraceCheckUtils]: 10: Hoare triple {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:24:39,825 INFO L290 TraceCheckUtils]: 11: Hoare triple {14097#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14098#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:24:39,825 INFO L290 TraceCheckUtils]: 12: Hoare triple {14098#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14099#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:39,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {14099#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14100#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:39,826 INFO L290 TraceCheckUtils]: 14: Hoare triple {14100#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,827 INFO L290 TraceCheckUtils]: 15: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,827 INFO L290 TraceCheckUtils]: 16: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,827 INFO L290 TraceCheckUtils]: 17: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,828 INFO L290 TraceCheckUtils]: 19: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:39,829 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} {14063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {14081#(<= main_~m~0 (* main_~a~0 3))} is VALID [2022-04-27 22:24:39,829 INFO L290 TraceCheckUtils]: 21: Hoare triple {14081#(<= main_~m~0 (* main_~a~0 3))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {14081#(<= main_~m~0 (* main_~a~0 3))} is VALID [2022-04-27 22:24:39,829 INFO L272 TraceCheckUtils]: 22: Hoare triple {14081#(<= main_~m~0 (* main_~a~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:39,830 INFO L290 TraceCheckUtils]: 23: Hoare triple {14063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,830 INFO L290 TraceCheckUtils]: 24: Hoare triple {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,830 INFO L290 TraceCheckUtils]: 25: Hoare triple {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,831 INFO L290 TraceCheckUtils]: 26: Hoare triple {14102#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14103#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:39,832 INFO L290 TraceCheckUtils]: 27: Hoare triple {14103#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14104#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,832 INFO L290 TraceCheckUtils]: 28: Hoare triple {14104#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14105#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,833 INFO L290 TraceCheckUtils]: 29: Hoare triple {14105#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14106#(and (<= (+ (* |student_version_#in~a| 3) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:39,833 INFO L290 TraceCheckUtils]: 30: Hoare triple {14106#(and (<= (+ (* |student_version_#in~a| 3) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,833 INFO L290 TraceCheckUtils]: 31: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,834 INFO L290 TraceCheckUtils]: 32: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,834 INFO L290 TraceCheckUtils]: 33: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,834 INFO L290 TraceCheckUtils]: 34: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,835 INFO L290 TraceCheckUtils]: 35: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:39,836 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} {14081#(<= main_~m~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {14064#false} is VALID [2022-04-27 22:24:39,836 INFO L290 TraceCheckUtils]: 37: Hoare triple {14064#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {14064#false} is VALID [2022-04-27 22:24:39,836 INFO L272 TraceCheckUtils]: 38: Hoare triple {14064#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {14064#false} is VALID [2022-04-27 22:24:39,836 INFO L290 TraceCheckUtils]: 39: Hoare triple {14064#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {14064#false} is VALID [2022-04-27 22:24:39,836 INFO L290 TraceCheckUtils]: 40: Hoare triple {14064#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {14064#false} is VALID [2022-04-27 22:24:39,836 INFO L290 TraceCheckUtils]: 41: Hoare triple {14064#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14064#false} is VALID [2022-04-27 22:24:39,836 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:39,836 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:39,837 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [54287387] [2022-04-27 22:24:39,837 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [54287387] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:39,837 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [21405451] [2022-04-27 22:24:39,837 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:24:39,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:39,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:39,838 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-27 22:24:39,839 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-27 22:24:39,892 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 22:24:39,893 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:39,894 INFO L263 TraceCheckSpWp]: Trace formula consists of 203 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 22:24:39,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:39,908 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:40,722 INFO L272 TraceCheckUtils]: 0: Hoare triple {14063#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:40,723 INFO L290 TraceCheckUtils]: 1: Hoare triple {14063#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {14063#true} is VALID [2022-04-27 22:24:40,723 INFO L290 TraceCheckUtils]: 2: Hoare triple {14063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:40,723 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14063#true} {14063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:40,723 INFO L272 TraceCheckUtils]: 4: Hoare triple {14063#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:40,723 INFO L290 TraceCheckUtils]: 5: Hoare triple {14063#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:40,723 INFO L290 TraceCheckUtils]: 6: Hoare triple {14063#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:40,723 INFO L272 TraceCheckUtils]: 7: Hoare triple {14063#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:40,724 INFO L290 TraceCheckUtils]: 8: Hoare triple {14063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {14135#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,724 INFO L290 TraceCheckUtils]: 9: Hoare triple {14135#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {14135#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,724 INFO L290 TraceCheckUtils]: 10: Hoare triple {14135#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {14135#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,725 INFO L290 TraceCheckUtils]: 11: Hoare triple {14135#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14145#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,725 INFO L290 TraceCheckUtils]: 12: Hoare triple {14145#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14149#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,726 INFO L290 TraceCheckUtils]: 13: Hoare triple {14149#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14153#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 3)) |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,727 INFO L290 TraceCheckUtils]: 14: Hoare triple {14153#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 3)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,727 INFO L290 TraceCheckUtils]: 15: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,727 INFO L290 TraceCheckUtils]: 16: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,728 INFO L290 TraceCheckUtils]: 17: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,728 INFO L290 TraceCheckUtils]: 18: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,728 INFO L290 TraceCheckUtils]: 19: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:40,729 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} {14063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {14081#(<= main_~m~0 (* main_~a~0 3))} is VALID [2022-04-27 22:24:40,729 INFO L290 TraceCheckUtils]: 21: Hoare triple {14081#(<= main_~m~0 (* main_~a~0 3))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {14081#(<= main_~m~0 (* main_~a~0 3))} is VALID [2022-04-27 22:24:40,729 INFO L272 TraceCheckUtils]: 22: Hoare triple {14081#(<= main_~m~0 (* main_~a~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:40,730 INFO L290 TraceCheckUtils]: 23: Hoare triple {14063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {14184#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:40,730 INFO L290 TraceCheckUtils]: 24: Hoare triple {14184#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {14184#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:40,731 INFO L290 TraceCheckUtils]: 25: Hoare triple {14184#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {14184#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:40,731 INFO L290 TraceCheckUtils]: 26: Hoare triple {14184#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14194#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:24:40,732 INFO L290 TraceCheckUtils]: 27: Hoare triple {14194#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14198#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:24:40,732 INFO L290 TraceCheckUtils]: 28: Hoare triple {14198#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14202#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 3)))} is VALID [2022-04-27 22:24:40,733 INFO L290 TraceCheckUtils]: 29: Hoare triple {14202#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 3)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:40,733 INFO L290 TraceCheckUtils]: 30: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:40,733 INFO L290 TraceCheckUtils]: 31: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:40,734 INFO L290 TraceCheckUtils]: 32: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:40,734 INFO L290 TraceCheckUtils]: 33: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:40,734 INFO L290 TraceCheckUtils]: 34: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:40,734 INFO L290 TraceCheckUtils]: 35: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:40,735 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} {14081#(<= main_~m~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {14064#false} is VALID [2022-04-27 22:24:40,735 INFO L290 TraceCheckUtils]: 37: Hoare triple {14064#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {14064#false} is VALID [2022-04-27 22:24:40,735 INFO L272 TraceCheckUtils]: 38: Hoare triple {14064#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {14064#false} is VALID [2022-04-27 22:24:40,736 INFO L290 TraceCheckUtils]: 39: Hoare triple {14064#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {14064#false} is VALID [2022-04-27 22:24:40,736 INFO L290 TraceCheckUtils]: 40: Hoare triple {14064#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {14064#false} is VALID [2022-04-27 22:24:40,736 INFO L290 TraceCheckUtils]: 41: Hoare triple {14064#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14064#false} is VALID [2022-04-27 22:24:40,736 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:40,736 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:41,882 INFO L290 TraceCheckUtils]: 41: Hoare triple {14064#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14064#false} is VALID [2022-04-27 22:24:41,882 INFO L290 TraceCheckUtils]: 40: Hoare triple {14064#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {14064#false} is VALID [2022-04-27 22:24:41,883 INFO L290 TraceCheckUtils]: 39: Hoare triple {14064#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {14064#false} is VALID [2022-04-27 22:24:41,883 INFO L272 TraceCheckUtils]: 38: Hoare triple {14064#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {14064#false} is VALID [2022-04-27 22:24:41,883 INFO L290 TraceCheckUtils]: 37: Hoare triple {14064#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {14064#false} is VALID [2022-04-27 22:24:41,884 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} {14081#(<= main_~m~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {14064#false} is VALID [2022-04-27 22:24:41,884 INFO L290 TraceCheckUtils]: 35: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:41,884 INFO L290 TraceCheckUtils]: 34: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:41,884 INFO L290 TraceCheckUtils]: 33: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:41,885 INFO L290 TraceCheckUtils]: 32: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:41,885 INFO L290 TraceCheckUtils]: 31: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:41,885 INFO L290 TraceCheckUtils]: 30: Hoare triple {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:41,886 INFO L290 TraceCheckUtils]: 29: Hoare triple {14281#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14107#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:24:41,886 INFO L290 TraceCheckUtils]: 28: Hoare triple {14285#(or (<= student_version_~m (+ student_version_~l~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14281#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:24:41,887 INFO L290 TraceCheckUtils]: 27: Hoare triple {14289#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14285#(or (<= student_version_~m (+ student_version_~l~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:24:41,887 INFO L290 TraceCheckUtils]: 26: Hoare triple {14293#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {14289#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:24:41,888 INFO L290 TraceCheckUtils]: 25: Hoare triple {14293#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {14293#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:24:41,888 INFO L290 TraceCheckUtils]: 24: Hoare triple {14293#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {14293#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:24:41,889 INFO L290 TraceCheckUtils]: 23: Hoare triple {14063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {14293#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:24:41,889 INFO L272 TraceCheckUtils]: 22: Hoare triple {14081#(<= main_~m~0 (* main_~a~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:41,889 INFO L290 TraceCheckUtils]: 21: Hoare triple {14081#(<= main_~m~0 (* main_~a~0 3))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {14081#(<= main_~m~0 (* main_~a~0 3))} is VALID [2022-04-27 22:24:41,890 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} {14063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {14081#(<= main_~m~0 (* main_~a~0 3))} is VALID [2022-04-27 22:24:41,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:41,891 INFO L290 TraceCheckUtils]: 18: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:41,891 INFO L290 TraceCheckUtils]: 17: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:41,891 INFO L290 TraceCheckUtils]: 16: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:41,892 INFO L290 TraceCheckUtils]: 15: Hoare triple {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:41,892 INFO L290 TraceCheckUtils]: 14: Hoare triple {14330#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {14101#(<= |correct_version_#in~m| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:24:41,893 INFO L290 TraceCheckUtils]: 13: Hoare triple {14334#(or (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14330#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:41,893 INFO L290 TraceCheckUtils]: 12: Hoare triple {14338#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14334#(or (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:41,894 INFO L290 TraceCheckUtils]: 11: Hoare triple {14342#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {14338#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:41,894 INFO L290 TraceCheckUtils]: 10: Hoare triple {14342#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {14342#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:41,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {14342#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {14342#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:41,895 INFO L290 TraceCheckUtils]: 8: Hoare triple {14063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {14342#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:24:41,895 INFO L272 TraceCheckUtils]: 7: Hoare triple {14063#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:41,895 INFO L290 TraceCheckUtils]: 6: Hoare triple {14063#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:41,895 INFO L290 TraceCheckUtils]: 5: Hoare triple {14063#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {14063#true} is VALID [2022-04-27 22:24:41,895 INFO L272 TraceCheckUtils]: 4: Hoare triple {14063#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:41,895 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14063#true} {14063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:41,895 INFO L290 TraceCheckUtils]: 2: Hoare triple {14063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:41,895 INFO L290 TraceCheckUtils]: 1: Hoare triple {14063#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {14063#true} is VALID [2022-04-27 22:24:41,896 INFO L272 TraceCheckUtils]: 0: Hoare triple {14063#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {14063#true} is VALID [2022-04-27 22:24:41,896 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:41,896 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [21405451] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:41,896 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:41,896 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 13, 13] total 31 [2022-04-27 22:24:41,896 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [741512275] [2022-04-27 22:24:41,896 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:41,897 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-27 22:24:41,897 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:41,897 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:41,947 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:41,947 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-04-27 22:24:41,947 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:41,947 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-04-27 22:24:41,947 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=834, Unknown=0, NotChecked=0, Total=930 [2022-04-27 22:24:41,948 INFO L87 Difference]: Start difference. First operand 126 states and 149 transitions. Second operand has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:44,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:44,583 INFO L93 Difference]: Finished difference Result 152 states and 180 transitions. [2022-04-27 22:24:44,583 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-27 22:24:44,583 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-27 22:24:44,583 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:44,583 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:44,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 98 transitions. [2022-04-27 22:24:44,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:44,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 98 transitions. [2022-04-27 22:24:44,585 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 98 transitions. [2022-04-27 22:24:44,664 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:44,665 INFO L225 Difference]: With dead ends: 152 [2022-04-27 22:24:44,666 INFO L226 Difference]: Without dead ends: 138 [2022-04-27 22:24:44,666 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 262 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=230, Invalid=1932, Unknown=0, NotChecked=0, Total=2162 [2022-04-27 22:24:44,667 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 271 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 1038 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 276 SdHoareTripleChecker+Valid, 131 SdHoareTripleChecker+Invalid, 1074 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 1038 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:44,667 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [276 Valid, 131 Invalid, 1074 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 1038 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 22:24:44,667 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2022-04-27 22:24:44,965 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 129. [2022-04-27 22:24:44,965 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:44,966 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand has 129 states, 105 states have (on average 1.2285714285714286) internal successors, (129), 115 states have internal predecessors, (129), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:44,966 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand has 129 states, 105 states have (on average 1.2285714285714286) internal successors, (129), 115 states have internal predecessors, (129), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:44,966 INFO L87 Difference]: Start difference. First operand 138 states. Second operand has 129 states, 105 states have (on average 1.2285714285714286) internal successors, (129), 115 states have internal predecessors, (129), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:44,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:44,968 INFO L93 Difference]: Finished difference Result 138 states and 164 transitions. [2022-04-27 22:24:44,968 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 164 transitions. [2022-04-27 22:24:44,969 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:44,969 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:44,969 INFO L74 IsIncluded]: Start isIncluded. First operand has 129 states, 105 states have (on average 1.2285714285714286) internal successors, (129), 115 states have internal predecessors, (129), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) Second operand 138 states. [2022-04-27 22:24:44,969 INFO L87 Difference]: Start difference. First operand has 129 states, 105 states have (on average 1.2285714285714286) internal successors, (129), 115 states have internal predecessors, (129), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) Second operand 138 states. [2022-04-27 22:24:44,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:44,971 INFO L93 Difference]: Finished difference Result 138 states and 164 transitions. [2022-04-27 22:24:44,971 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 164 transitions. [2022-04-27 22:24:44,971 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:44,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:44,971 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:44,971 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:44,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 129 states, 105 states have (on average 1.2285714285714286) internal successors, (129), 115 states have internal predecessors, (129), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (15), 8 states have call predecessors, (15), 8 states have call successors, (15) [2022-04-27 22:24:44,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 129 states and 154 transitions. [2022-04-27 22:24:44,973 INFO L78 Accepts]: Start accepts. Automaton has 129 states and 154 transitions. Word has length 42 [2022-04-27 22:24:44,973 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:44,973 INFO L495 AbstractCegarLoop]: Abstraction has 129 states and 154 transitions. [2022-04-27 22:24:44,973 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:44,973 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 154 transitions. [2022-04-27 22:24:44,974 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 22:24:44,974 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:44,974 INFO L195 NwaCegarLoop]: trace histogram [4, 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, 1, 1, 1] [2022-04-27 22:24:44,990 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-27 22:24:45,183 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:45,183 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:45,184 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:45,184 INFO L85 PathProgramCache]: Analyzing trace with hash 520121747, now seen corresponding path program 16 times [2022-04-27 22:24:45,184 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:45,184 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1229390863] [2022-04-27 22:24:45,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:45,184 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:45,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:45,211 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:45,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:45,213 INFO L290 TraceCheckUtils]: 0: Hoare triple {15107#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {15074#true} is VALID [2022-04-27 22:24:45,213 INFO L290 TraceCheckUtils]: 1: Hoare triple {15074#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:45,213 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {15074#true} {15074#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:45,214 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:45,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:45,288 INFO L290 TraceCheckUtils]: 0: Hoare triple {15074#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,288 INFO L290 TraceCheckUtils]: 1: Hoare triple {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,289 INFO L290 TraceCheckUtils]: 2: Hoare triple {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,289 INFO L290 TraceCheckUtils]: 3: Hoare triple {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15109#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,290 INFO L290 TraceCheckUtils]: 4: Hoare triple {15109#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15110#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,290 INFO L290 TraceCheckUtils]: 5: Hoare triple {15110#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15111#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,291 INFO L290 TraceCheckUtils]: 6: Hoare triple {15111#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15112#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 3 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:24:45,291 INFO L290 TraceCheckUtils]: 7: Hoare triple {15112#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 3 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,292 INFO L290 TraceCheckUtils]: 8: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,292 INFO L290 TraceCheckUtils]: 9: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,292 INFO L290 TraceCheckUtils]: 10: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,293 INFO L290 TraceCheckUtils]: 11: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,293 INFO L290 TraceCheckUtils]: 12: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,294 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {15074#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} is VALID [2022-04-27 22:24:45,294 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 22:24:45,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:45,375 INFO L290 TraceCheckUtils]: 0: Hoare triple {15074#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:45,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:45,375 INFO L290 TraceCheckUtils]: 2: Hoare triple {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:45,376 INFO L290 TraceCheckUtils]: 3: Hoare triple {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15115#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:24:45,376 INFO L290 TraceCheckUtils]: 4: Hoare triple {15115#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15116#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:24:45,383 INFO L290 TraceCheckUtils]: 5: Hoare triple {15116#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15117#(and (<= student_version_~l~1 (* |student_version_#in~a| 3)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:45,385 INFO L290 TraceCheckUtils]: 6: Hoare triple {15117#(and (<= student_version_~l~1 (* |student_version_#in~a| 3)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,385 INFO L290 TraceCheckUtils]: 7: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,385 INFO L290 TraceCheckUtils]: 8: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,386 INFO L290 TraceCheckUtils]: 9: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,386 INFO L290 TraceCheckUtils]: 10: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,386 INFO L290 TraceCheckUtils]: 11: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,387 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {15075#false} is VALID [2022-04-27 22:24:45,387 INFO L272 TraceCheckUtils]: 0: Hoare triple {15074#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15107#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:45,387 INFO L290 TraceCheckUtils]: 1: Hoare triple {15107#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {15074#true} is VALID [2022-04-27 22:24:45,388 INFO L290 TraceCheckUtils]: 2: Hoare triple {15074#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:45,388 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15074#true} {15074#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:45,388 INFO L272 TraceCheckUtils]: 4: Hoare triple {15074#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:45,388 INFO L290 TraceCheckUtils]: 5: Hoare triple {15074#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:45,388 INFO L290 TraceCheckUtils]: 6: Hoare triple {15074#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:45,388 INFO L272 TraceCheckUtils]: 7: Hoare triple {15074#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:45,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {15074#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,389 INFO L290 TraceCheckUtils]: 9: Hoare triple {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,389 INFO L290 TraceCheckUtils]: 10: Hoare triple {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {15108#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15109#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,390 INFO L290 TraceCheckUtils]: 12: Hoare triple {15109#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15110#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {15110#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15111#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:45,391 INFO L290 TraceCheckUtils]: 14: Hoare triple {15111#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15112#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 3 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:24:45,392 INFO L290 TraceCheckUtils]: 15: Hoare triple {15112#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 3 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,392 INFO L290 TraceCheckUtils]: 16: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,392 INFO L290 TraceCheckUtils]: 17: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,393 INFO L290 TraceCheckUtils]: 18: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,393 INFO L290 TraceCheckUtils]: 19: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,393 INFO L290 TraceCheckUtils]: 20: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:45,394 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {15074#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} is VALID [2022-04-27 22:24:45,394 INFO L290 TraceCheckUtils]: 22: Hoare triple {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} is VALID [2022-04-27 22:24:45,394 INFO L272 TraceCheckUtils]: 23: Hoare triple {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:45,395 INFO L290 TraceCheckUtils]: 24: Hoare triple {15074#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:45,395 INFO L290 TraceCheckUtils]: 25: Hoare triple {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:45,395 INFO L290 TraceCheckUtils]: 26: Hoare triple {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:24:45,396 INFO L290 TraceCheckUtils]: 27: Hoare triple {15114#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15115#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:24:45,396 INFO L290 TraceCheckUtils]: 28: Hoare triple {15115#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15116#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:24:45,397 INFO L290 TraceCheckUtils]: 29: Hoare triple {15116#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15117#(and (<= student_version_~l~1 (* |student_version_#in~a| 3)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:45,397 INFO L290 TraceCheckUtils]: 30: Hoare triple {15117#(and (<= student_version_~l~1 (* |student_version_#in~a| 3)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,398 INFO L290 TraceCheckUtils]: 31: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,398 INFO L290 TraceCheckUtils]: 32: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,398 INFO L290 TraceCheckUtils]: 33: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,399 INFO L290 TraceCheckUtils]: 34: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,399 INFO L290 TraceCheckUtils]: 35: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:45,400 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {15075#false} is VALID [2022-04-27 22:24:45,400 INFO L290 TraceCheckUtils]: 37: Hoare triple {15075#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {15075#false} is VALID [2022-04-27 22:24:45,400 INFO L272 TraceCheckUtils]: 38: Hoare triple {15075#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {15075#false} is VALID [2022-04-27 22:24:45,400 INFO L290 TraceCheckUtils]: 39: Hoare triple {15075#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {15075#false} is VALID [2022-04-27 22:24:45,400 INFO L290 TraceCheckUtils]: 40: Hoare triple {15075#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {15075#false} is VALID [2022-04-27 22:24:45,400 INFO L290 TraceCheckUtils]: 41: Hoare triple {15075#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15075#false} is VALID [2022-04-27 22:24:45,400 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:45,400 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:45,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1229390863] [2022-04-27 22:24:45,400 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1229390863] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:45,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1017411871] [2022-04-27 22:24:45,400 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:24:45,401 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:45,401 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:45,401 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-27 22:24:45,402 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-27 22:24:45,447 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:24:45,447 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:45,448 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 22:24:45,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:45,458 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:47,318 INFO L272 TraceCheckUtils]: 0: Hoare triple {15074#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:47,318 INFO L290 TraceCheckUtils]: 1: Hoare triple {15074#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {15074#true} is VALID [2022-04-27 22:24:47,318 INFO L290 TraceCheckUtils]: 2: Hoare triple {15074#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:47,318 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15074#true} {15074#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:47,318 INFO L272 TraceCheckUtils]: 4: Hoare triple {15074#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:47,318 INFO L290 TraceCheckUtils]: 5: Hoare triple {15074#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:47,318 INFO L290 TraceCheckUtils]: 6: Hoare triple {15074#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:47,318 INFO L272 TraceCheckUtils]: 7: Hoare triple {15074#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:47,319 INFO L290 TraceCheckUtils]: 8: Hoare triple {15074#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {15146#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:47,319 INFO L290 TraceCheckUtils]: 9: Hoare triple {15146#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {15146#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:47,320 INFO L290 TraceCheckUtils]: 10: Hoare triple {15146#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {15146#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:47,320 INFO L290 TraceCheckUtils]: 11: Hoare triple {15146#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15156#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:47,321 INFO L290 TraceCheckUtils]: 12: Hoare triple {15156#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15160#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:24:47,322 INFO L290 TraceCheckUtils]: 13: Hoare triple {15160#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15164#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 3)))} is VALID [2022-04-27 22:24:47,322 INFO L290 TraceCheckUtils]: 14: Hoare triple {15164#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 3)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:47,322 INFO L290 TraceCheckUtils]: 15: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:47,323 INFO L290 TraceCheckUtils]: 16: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:47,323 INFO L290 TraceCheckUtils]: 17: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:47,323 INFO L290 TraceCheckUtils]: 18: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:47,324 INFO L290 TraceCheckUtils]: 19: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:47,324 INFO L290 TraceCheckUtils]: 20: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:47,325 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {15074#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} is VALID [2022-04-27 22:24:47,325 INFO L290 TraceCheckUtils]: 22: Hoare triple {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} is VALID [2022-04-27 22:24:47,325 INFO L272 TraceCheckUtils]: 23: Hoare triple {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:47,326 INFO L290 TraceCheckUtils]: 24: Hoare triple {15074#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {15198#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:47,326 INFO L290 TraceCheckUtils]: 25: Hoare triple {15198#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {15198#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:47,327 INFO L290 TraceCheckUtils]: 26: Hoare triple {15198#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {15198#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:47,327 INFO L290 TraceCheckUtils]: 27: Hoare triple {15198#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15208#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:24:47,328 INFO L290 TraceCheckUtils]: 28: Hoare triple {15208#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15212#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:24:47,328 INFO L290 TraceCheckUtils]: 29: Hoare triple {15212#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15216#(and (<= (div (- student_version_~l~1) (- 3)) |student_version_#in~a|) (<= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:24:47,329 INFO L290 TraceCheckUtils]: 30: Hoare triple {15216#(and (<= (div (- student_version_~l~1) (- 3)) |student_version_#in~a|) (<= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:47,329 INFO L290 TraceCheckUtils]: 31: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:47,329 INFO L290 TraceCheckUtils]: 32: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:47,330 INFO L290 TraceCheckUtils]: 33: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:47,330 INFO L290 TraceCheckUtils]: 34: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:47,330 INFO L290 TraceCheckUtils]: 35: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:47,331 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {15075#false} is VALID [2022-04-27 22:24:47,331 INFO L290 TraceCheckUtils]: 37: Hoare triple {15075#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {15075#false} is VALID [2022-04-27 22:24:47,331 INFO L272 TraceCheckUtils]: 38: Hoare triple {15075#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {15075#false} is VALID [2022-04-27 22:24:47,331 INFO L290 TraceCheckUtils]: 39: Hoare triple {15075#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {15075#false} is VALID [2022-04-27 22:24:47,332 INFO L290 TraceCheckUtils]: 40: Hoare triple {15075#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {15075#false} is VALID [2022-04-27 22:24:47,332 INFO L290 TraceCheckUtils]: 41: Hoare triple {15075#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15075#false} is VALID [2022-04-27 22:24:47,332 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:47,332 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:48,437 INFO L290 TraceCheckUtils]: 41: Hoare triple {15075#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15075#false} is VALID [2022-04-27 22:24:48,437 INFO L290 TraceCheckUtils]: 40: Hoare triple {15075#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {15075#false} is VALID [2022-04-27 22:24:48,437 INFO L290 TraceCheckUtils]: 39: Hoare triple {15075#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {15075#false} is VALID [2022-04-27 22:24:48,437 INFO L272 TraceCheckUtils]: 38: Hoare triple {15075#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {15075#false} is VALID [2022-04-27 22:24:48,437 INFO L290 TraceCheckUtils]: 37: Hoare triple {15075#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {15075#false} is VALID [2022-04-27 22:24:48,438 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {15075#false} is VALID [2022-04-27 22:24:48,439 INFO L290 TraceCheckUtils]: 35: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:48,439 INFO L290 TraceCheckUtils]: 34: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:48,439 INFO L290 TraceCheckUtils]: 33: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:48,440 INFO L290 TraceCheckUtils]: 32: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:48,440 INFO L290 TraceCheckUtils]: 31: Hoare triple {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:48,441 INFO L290 TraceCheckUtils]: 30: Hoare triple {15289#(or (<= |student_version_#in~m| (* |student_version_#in~a| 3)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {15118#(<= |student_version_#in~m| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:24:48,441 INFO L290 TraceCheckUtils]: 29: Hoare triple {15293#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15289#(or (<= |student_version_#in~m| (* |student_version_#in~a| 3)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:24:48,442 INFO L290 TraceCheckUtils]: 28: Hoare triple {15297#(or (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15293#(or (< (+ student_version_~l~1 student_version_~a) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:24:48,443 INFO L290 TraceCheckUtils]: 27: Hoare triple {15301#(or (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {15297#(or (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:24:48,443 INFO L290 TraceCheckUtils]: 26: Hoare triple {15301#(or (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {15301#(or (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:24:48,444 INFO L290 TraceCheckUtils]: 25: Hoare triple {15301#(or (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {15301#(or (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:24:48,444 INFO L290 TraceCheckUtils]: 24: Hoare triple {15074#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {15301#(or (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:24:48,444 INFO L272 TraceCheckUtils]: 23: Hoare triple {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:48,445 INFO L290 TraceCheckUtils]: 22: Hoare triple {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} is VALID [2022-04-27 22:24:48,446 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {15074#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {15093#(<= (+ (* main_~a~0 3) 1) main_~m~0)} is VALID [2022-04-27 22:24:48,446 INFO L290 TraceCheckUtils]: 20: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:48,446 INFO L290 TraceCheckUtils]: 19: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:48,447 INFO L290 TraceCheckUtils]: 18: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:48,447 INFO L290 TraceCheckUtils]: 17: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:48,448 INFO L290 TraceCheckUtils]: 16: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:48,448 INFO L290 TraceCheckUtils]: 15: Hoare triple {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:48,449 INFO L290 TraceCheckUtils]: 14: Hoare triple {15341#(or (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15113#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:24:48,449 INFO L290 TraceCheckUtils]: 13: Hoare triple {15345#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15341#(or (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:24:48,450 INFO L290 TraceCheckUtils]: 12: Hoare triple {15349#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15345#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:48,451 INFO L290 TraceCheckUtils]: 11: Hoare triple {15353#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {15349#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:48,451 INFO L290 TraceCheckUtils]: 10: Hoare triple {15353#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {15353#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:48,452 INFO L290 TraceCheckUtils]: 9: Hoare triple {15353#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {15353#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:48,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {15074#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {15353#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:24:48,452 INFO L272 TraceCheckUtils]: 7: Hoare triple {15074#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:48,452 INFO L290 TraceCheckUtils]: 6: Hoare triple {15074#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:48,453 INFO L290 TraceCheckUtils]: 5: Hoare triple {15074#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {15074#true} is VALID [2022-04-27 22:24:48,453 INFO L272 TraceCheckUtils]: 4: Hoare triple {15074#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:48,453 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15074#true} {15074#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:48,453 INFO L290 TraceCheckUtils]: 2: Hoare triple {15074#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:48,453 INFO L290 TraceCheckUtils]: 1: Hoare triple {15074#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {15074#true} is VALID [2022-04-27 22:24:48,453 INFO L272 TraceCheckUtils]: 0: Hoare triple {15074#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15074#true} is VALID [2022-04-27 22:24:48,453 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:24:48,453 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1017411871] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:48,454 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:48,454 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 13, 13] total 31 [2022-04-27 22:24:48,454 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1866404488] [2022-04-27 22:24:48,454 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:48,454 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-27 22:24:48,455 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:48,455 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:48,511 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:48,511 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-04-27 22:24:48,511 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:48,511 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-04-27 22:24:48,512 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=834, Unknown=0, NotChecked=0, Total=930 [2022-04-27 22:24:48,512 INFO L87 Difference]: Start difference. First operand 129 states and 154 transitions. Second operand has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:50,501 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:50,501 INFO L93 Difference]: Finished difference Result 144 states and 169 transitions. [2022-04-27 22:24:50,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-27 22:24:50,501 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-27 22:24:50,501 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:50,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:50,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 97 transitions. [2022-04-27 22:24:50,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:50,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 97 transitions. [2022-04-27 22:24:50,504 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 97 transitions. [2022-04-27 22:24:50,591 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:50,592 INFO L225 Difference]: With dead ends: 144 [2022-04-27 22:24:50,592 INFO L226 Difference]: Without dead ends: 132 [2022-04-27 22:24:50,593 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 269 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=230, Invalid=1932, Unknown=0, NotChecked=0, Total=2162 [2022-04-27 22:24:50,593 INFO L413 NwaCegarLoop]: 56 mSDtfsCounter, 258 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 1238 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 265 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 1269 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 1238 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:50,593 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [265 Valid, 143 Invalid, 1269 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 1238 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 22:24:50,594 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-27 22:24:50,921 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 130. [2022-04-27 22:24:50,921 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:50,922 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 130 states, 106 states have (on average 1.2264150943396226) internal successors, (130), 116 states have internal predecessors, (130), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:50,922 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 130 states, 106 states have (on average 1.2264150943396226) internal successors, (130), 116 states have internal predecessors, (130), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:50,922 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 130 states, 106 states have (on average 1.2264150943396226) internal successors, (130), 116 states have internal predecessors, (130), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:50,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:50,924 INFO L93 Difference]: Finished difference Result 132 states and 156 transitions. [2022-04-27 22:24:50,924 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 156 transitions. [2022-04-27 22:24:50,924 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:50,924 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:50,924 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 106 states have (on average 1.2264150943396226) internal successors, (130), 116 states have internal predecessors, (130), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) Second operand 132 states. [2022-04-27 22:24:50,924 INFO L87 Difference]: Start difference. First operand has 130 states, 106 states have (on average 1.2264150943396226) internal successors, (130), 116 states have internal predecessors, (130), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) Second operand 132 states. [2022-04-27 22:24:50,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:50,926 INFO L93 Difference]: Finished difference Result 132 states and 156 transitions. [2022-04-27 22:24:50,926 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 156 transitions. [2022-04-27 22:24:50,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:50,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:50,926 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:50,926 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:50,926 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 106 states have (on average 1.2264150943396226) internal successors, (130), 116 states have internal predecessors, (130), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:50,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 154 transitions. [2022-04-27 22:24:50,928 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 154 transitions. Word has length 42 [2022-04-27 22:24:50,928 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:50,928 INFO L495 AbstractCegarLoop]: Abstraction has 130 states and 154 transitions. [2022-04-27 22:24:50,928 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 2.064516129032258) internal successors, (64), 30 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:24:50,928 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 154 transitions. [2022-04-27 22:24:50,929 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 22:24:50,929 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:50,929 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:50,947 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-27 22:24:51,139 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,SelfDestructingSolverStorable25 [2022-04-27 22:24:51,139 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:51,140 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:51,140 INFO L85 PathProgramCache]: Analyzing trace with hash -1295917546, now seen corresponding path program 17 times [2022-04-27 22:24:51,140 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:51,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2052533223] [2022-04-27 22:24:51,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:51,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:51,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:51,163 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:51,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:51,165 INFO L290 TraceCheckUtils]: 0: Hoare triple {16095#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {16063#true} is VALID [2022-04-27 22:24:51,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {16063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,166 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {16063#true} {16063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,166 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:51,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 0: Hoare triple {16063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 1: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 3: Hoare triple {16063#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 4: Hoare triple {16063#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 5: Hoare triple {16063#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 6: Hoare triple {16063#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {16063#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 10: Hoare triple {16063#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {16063#true} is VALID [2022-04-27 22:24:51,173 INFO L290 TraceCheckUtils]: 11: Hoare triple {16063#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,174 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {16063#true} {16063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,174 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:24:51,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:51,205 INFO L290 TraceCheckUtils]: 0: Hoare triple {16063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {16096#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:51,206 INFO L290 TraceCheckUtils]: 1: Hoare triple {16096#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16097#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:51,206 INFO L290 TraceCheckUtils]: 2: Hoare triple {16097#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,207 INFO L290 TraceCheckUtils]: 3: Hoare triple {16098#(<= student_version_~i~1 2)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,207 INFO L290 TraceCheckUtils]: 4: Hoare triple {16098#(<= student_version_~i~1 2)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,207 INFO L290 TraceCheckUtils]: 5: Hoare triple {16098#(<= student_version_~i~1 2)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,208 INFO L290 TraceCheckUtils]: 6: Hoare triple {16098#(<= student_version_~i~1 2)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16099#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:24:51,208 INFO L290 TraceCheckUtils]: 7: Hoare triple {16099#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16100#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:24:51,208 INFO L290 TraceCheckUtils]: 8: Hoare triple {16100#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16101#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:24:51,209 INFO L290 TraceCheckUtils]: 9: Hoare triple {16101#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16064#false} is VALID [2022-04-27 22:24:51,209 INFO L290 TraceCheckUtils]: 10: Hoare triple {16064#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,209 INFO L290 TraceCheckUtils]: 11: Hoare triple {16064#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {16064#false} is VALID [2022-04-27 22:24:51,209 INFO L290 TraceCheckUtils]: 12: Hoare triple {16064#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,209 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {16064#false} {16063#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {16064#false} is VALID [2022-04-27 22:24:51,210 INFO L272 TraceCheckUtils]: 0: Hoare triple {16063#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16095#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 1: Hoare triple {16095#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 2: Hoare triple {16063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16063#true} {16063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L272 TraceCheckUtils]: 4: Hoare triple {16063#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 5: Hoare triple {16063#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 6: Hoare triple {16063#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L272 TraceCheckUtils]: 7: Hoare triple {16063#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 8: Hoare triple {16063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 9: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 10: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 11: Hoare triple {16063#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,210 INFO L290 TraceCheckUtils]: 12: Hoare triple {16063#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 13: Hoare triple {16063#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 14: Hoare triple {16063#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 15: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 16: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 17: Hoare triple {16063#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 18: Hoare triple {16063#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 19: Hoare triple {16063#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {16063#true} {16063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 21: Hoare triple {16063#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L272 TraceCheckUtils]: 22: Hoare triple {16063#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,211 INFO L290 TraceCheckUtils]: 23: Hoare triple {16063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {16096#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:51,212 INFO L290 TraceCheckUtils]: 24: Hoare triple {16096#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16097#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:51,212 INFO L290 TraceCheckUtils]: 25: Hoare triple {16097#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,213 INFO L290 TraceCheckUtils]: 26: Hoare triple {16098#(<= student_version_~i~1 2)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,213 INFO L290 TraceCheckUtils]: 27: Hoare triple {16098#(<= student_version_~i~1 2)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,213 INFO L290 TraceCheckUtils]: 28: Hoare triple {16098#(<= student_version_~i~1 2)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,213 INFO L290 TraceCheckUtils]: 29: Hoare triple {16098#(<= student_version_~i~1 2)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16099#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:24:51,214 INFO L290 TraceCheckUtils]: 30: Hoare triple {16099#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16100#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:24:51,214 INFO L290 TraceCheckUtils]: 31: Hoare triple {16100#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16101#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:24:51,214 INFO L290 TraceCheckUtils]: 32: Hoare triple {16101#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16064#false} is VALID [2022-04-27 22:24:51,214 INFO L290 TraceCheckUtils]: 33: Hoare triple {16064#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L290 TraceCheckUtils]: 34: Hoare triple {16064#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L290 TraceCheckUtils]: 35: Hoare triple {16064#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16064#false} {16063#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L290 TraceCheckUtils]: 37: Hoare triple {16064#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L272 TraceCheckUtils]: 38: Hoare triple {16064#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L290 TraceCheckUtils]: 39: Hoare triple {16064#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L290 TraceCheckUtils]: 40: Hoare triple {16064#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L290 TraceCheckUtils]: 41: Hoare triple {16064#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,215 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:51,215 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:51,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2052533223] [2022-04-27 22:24:51,215 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2052533223] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:51,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1156305771] [2022-04-27 22:24:51,216 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:24:51,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:51,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:51,217 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-27 22:24:51,218 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-27 22:24:51,269 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2022-04-27 22:24:51,269 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:51,270 INFO L263 TraceCheckSpWp]: Trace formula consists of 203 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 22:24:51,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:51,277 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:51,389 INFO L272 TraceCheckUtils]: 0: Hoare triple {16063#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {16063#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {16063#true} is VALID [2022-04-27 22:24:51,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {16063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,389 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16063#true} {16063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,389 INFO L272 TraceCheckUtils]: 4: Hoare triple {16063#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 5: Hoare triple {16063#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 6: Hoare triple {16063#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L272 TraceCheckUtils]: 7: Hoare triple {16063#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {16063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 10: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {16063#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 12: Hoare triple {16063#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 13: Hoare triple {16063#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 14: Hoare triple {16063#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 15: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,390 INFO L290 TraceCheckUtils]: 16: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,391 INFO L290 TraceCheckUtils]: 17: Hoare triple {16063#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,391 INFO L290 TraceCheckUtils]: 18: Hoare triple {16063#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {16063#true} is VALID [2022-04-27 22:24:51,391 INFO L290 TraceCheckUtils]: 19: Hoare triple {16063#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,392 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {16063#true} {16063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,392 INFO L290 TraceCheckUtils]: 21: Hoare triple {16063#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {16063#true} is VALID [2022-04-27 22:24:51,392 INFO L272 TraceCheckUtils]: 22: Hoare triple {16063#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,392 INFO L290 TraceCheckUtils]: 23: Hoare triple {16063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {16096#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:51,393 INFO L290 TraceCheckUtils]: 24: Hoare triple {16096#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16097#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:51,393 INFO L290 TraceCheckUtils]: 25: Hoare triple {16097#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,393 INFO L290 TraceCheckUtils]: 26: Hoare triple {16098#(<= student_version_~i~1 2)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,393 INFO L290 TraceCheckUtils]: 27: Hoare triple {16098#(<= student_version_~i~1 2)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,393 INFO L290 TraceCheckUtils]: 28: Hoare triple {16098#(<= student_version_~i~1 2)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,394 INFO L290 TraceCheckUtils]: 29: Hoare triple {16098#(<= student_version_~i~1 2)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16192#(and (<= student_version_~i~1 2) (<= 0 student_version_~x~1))} is VALID [2022-04-27 22:24:51,394 INFO L290 TraceCheckUtils]: 30: Hoare triple {16192#(and (<= student_version_~i~1 2) (<= 0 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16196#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 2))} is VALID [2022-04-27 22:24:51,394 INFO L290 TraceCheckUtils]: 31: Hoare triple {16196#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16200#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 2))} is VALID [2022-04-27 22:24:51,395 INFO L290 TraceCheckUtils]: 32: Hoare triple {16200#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L290 TraceCheckUtils]: 33: Hoare triple {16064#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L290 TraceCheckUtils]: 34: Hoare triple {16064#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L290 TraceCheckUtils]: 35: Hoare triple {16064#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16064#false} {16063#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L290 TraceCheckUtils]: 37: Hoare triple {16064#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L272 TraceCheckUtils]: 38: Hoare triple {16064#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L290 TraceCheckUtils]: 39: Hoare triple {16064#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {16064#false} is VALID [2022-04-27 22:24:51,395 INFO L290 TraceCheckUtils]: 40: Hoare triple {16064#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,396 INFO L290 TraceCheckUtils]: 41: Hoare triple {16064#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,396 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:51,396 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:51,471 INFO L290 TraceCheckUtils]: 41: Hoare triple {16064#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,471 INFO L290 TraceCheckUtils]: 40: Hoare triple {16064#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,471 INFO L290 TraceCheckUtils]: 39: Hoare triple {16064#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {16064#false} is VALID [2022-04-27 22:24:51,471 INFO L272 TraceCheckUtils]: 38: Hoare triple {16064#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {16064#false} is VALID [2022-04-27 22:24:51,471 INFO L290 TraceCheckUtils]: 37: Hoare triple {16064#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {16064#false} is VALID [2022-04-27 22:24:51,471 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16064#false} {16063#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {16064#false} is VALID [2022-04-27 22:24:51,471 INFO L290 TraceCheckUtils]: 35: Hoare triple {16064#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,472 INFO L290 TraceCheckUtils]: 34: Hoare triple {16064#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {16064#false} is VALID [2022-04-27 22:24:51,472 INFO L290 TraceCheckUtils]: 33: Hoare triple {16064#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {16064#false} is VALID [2022-04-27 22:24:51,472 INFO L290 TraceCheckUtils]: 32: Hoare triple {16101#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16064#false} is VALID [2022-04-27 22:24:51,472 INFO L290 TraceCheckUtils]: 31: Hoare triple {16100#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16101#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:24:51,473 INFO L290 TraceCheckUtils]: 30: Hoare triple {16099#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16100#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:24:51,473 INFO L290 TraceCheckUtils]: 29: Hoare triple {16098#(<= student_version_~i~1 2)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {16099#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:24:51,473 INFO L290 TraceCheckUtils]: 28: Hoare triple {16098#(<= student_version_~i~1 2)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,473 INFO L290 TraceCheckUtils]: 27: Hoare triple {16098#(<= student_version_~i~1 2)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,473 INFO L290 TraceCheckUtils]: 26: Hoare triple {16098#(<= student_version_~i~1 2)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,474 INFO L290 TraceCheckUtils]: 25: Hoare triple {16097#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16098#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:24:51,474 INFO L290 TraceCheckUtils]: 24: Hoare triple {16096#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {16097#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:24:51,474 INFO L290 TraceCheckUtils]: 23: Hoare triple {16063#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {16096#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:24:51,474 INFO L272 TraceCheckUtils]: 22: Hoare triple {16063#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 21: Hoare triple {16063#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {16063#true} {16063#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 19: Hoare triple {16063#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 18: Hoare triple {16063#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 17: Hoare triple {16063#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 16: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 15: Hoare triple {16063#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 14: Hoare triple {16063#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {16063#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 12: Hoare triple {16063#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 11: Hoare triple {16063#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 10: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,475 INFO L290 TraceCheckUtils]: 9: Hoare triple {16063#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L290 TraceCheckUtils]: 8: Hoare triple {16063#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L272 TraceCheckUtils]: 7: Hoare triple {16063#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L290 TraceCheckUtils]: 6: Hoare triple {16063#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L290 TraceCheckUtils]: 5: Hoare triple {16063#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L272 TraceCheckUtils]: 4: Hoare triple {16063#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16063#true} {16063#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L290 TraceCheckUtils]: 2: Hoare triple {16063#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {16063#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L272 TraceCheckUtils]: 0: Hoare triple {16063#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {16063#true} is VALID [2022-04-27 22:24:51,476 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:51,476 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1156305771] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:51,476 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:51,477 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 12 [2022-04-27 22:24:51,477 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [694071941] [2022-04-27 22:24:51,477 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:51,478 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 11 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 42 [2022-04-27 22:24:51,478 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:51,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 11 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:51,518 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-27 22:24:51,518 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 22:24:51,518 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:51,519 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 22:24:51,519 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=93, Unknown=0, NotChecked=0, Total=132 [2022-04-27 22:24:51,519 INFO L87 Difference]: Start difference. First operand 130 states and 154 transitions. Second operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 11 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:52,279 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:52,279 INFO L93 Difference]: Finished difference Result 186 states and 223 transitions. [2022-04-27 22:24:52,279 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 22:24:52,279 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 11 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 42 [2022-04-27 22:24:52,279 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:52,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 11 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:52,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 70 transitions. [2022-04-27 22:24:52,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 11 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:52,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 70 transitions. [2022-04-27 22:24:52,280 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 70 transitions. [2022-04-27 22:24:52,330 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:52,332 INFO L225 Difference]: With dead ends: 186 [2022-04-27 22:24:52,332 INFO L226 Difference]: Without dead ends: 164 [2022-04-27 22:24:52,333 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 86 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 66 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=121, Invalid=299, Unknown=0, NotChecked=0, Total=420 [2022-04-27 22:24:52,333 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 65 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 158 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 58 SdHoareTripleChecker+Invalid, 175 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 158 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:52,333 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [68 Valid, 58 Invalid, 175 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 158 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:24:52,334 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-27 22:24:52,741 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 152. [2022-04-27 22:24:52,742 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:52,742 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 152 states, 128 states have (on average 1.2265625) internal successors, (157), 138 states have internal predecessors, (157), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:52,742 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 152 states, 128 states have (on average 1.2265625) internal successors, (157), 138 states have internal predecessors, (157), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:52,742 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 152 states, 128 states have (on average 1.2265625) internal successors, (157), 138 states have internal predecessors, (157), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:52,744 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:52,744 INFO L93 Difference]: Finished difference Result 164 states and 193 transitions. [2022-04-27 22:24:52,744 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 193 transitions. [2022-04-27 22:24:52,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:52,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:52,745 INFO L74 IsIncluded]: Start isIncluded. First operand has 152 states, 128 states have (on average 1.2265625) internal successors, (157), 138 states have internal predecessors, (157), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) Second operand 164 states. [2022-04-27 22:24:52,745 INFO L87 Difference]: Start difference. First operand has 152 states, 128 states have (on average 1.2265625) internal successors, (157), 138 states have internal predecessors, (157), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) Second operand 164 states. [2022-04-27 22:24:52,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:52,747 INFO L93 Difference]: Finished difference Result 164 states and 193 transitions. [2022-04-27 22:24:52,747 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 193 transitions. [2022-04-27 22:24:52,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:52,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:52,747 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:52,747 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:52,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 152 states, 128 states have (on average 1.2265625) internal successors, (157), 138 states have internal predecessors, (157), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:52,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 152 states to 152 states and 181 transitions. [2022-04-27 22:24:52,749 INFO L78 Accepts]: Start accepts. Automaton has 152 states and 181 transitions. Word has length 42 [2022-04-27 22:24:52,749 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:52,749 INFO L495 AbstractCegarLoop]: Abstraction has 152 states and 181 transitions. [2022-04-27 22:24:52,749 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 11 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:24:52,750 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 181 transitions. [2022-04-27 22:24:52,750 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 22:24:52,750 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:52,750 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:52,768 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-27 22:24:52,967 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,SelfDestructingSolverStorable26 [2022-04-27 22:24:52,967 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:52,967 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:52,968 INFO L85 PathProgramCache]: Analyzing trace with hash 817928577, now seen corresponding path program 18 times [2022-04-27 22:24:52,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:52,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [974348794] [2022-04-27 22:24:52,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:52,968 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:52,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:52,988 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:52,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:52,990 INFO L290 TraceCheckUtils]: 0: Hoare triple {17206#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {17174#true} is VALID [2022-04-27 22:24:52,990 INFO L290 TraceCheckUtils]: 1: Hoare triple {17174#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:52,990 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {17174#true} {17174#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:52,990 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:52,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:53,020 INFO L290 TraceCheckUtils]: 0: Hoare triple {17174#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {17207#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:53,021 INFO L290 TraceCheckUtils]: 1: Hoare triple {17207#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17208#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:53,021 INFO L290 TraceCheckUtils]: 2: Hoare triple {17208#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,021 INFO L290 TraceCheckUtils]: 3: Hoare triple {17209#(<= correct_version_~i~0 2)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,021 INFO L290 TraceCheckUtils]: 4: Hoare triple {17209#(<= correct_version_~i~0 2)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,022 INFO L290 TraceCheckUtils]: 5: Hoare triple {17209#(<= correct_version_~i~0 2)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,022 INFO L290 TraceCheckUtils]: 6: Hoare triple {17209#(<= correct_version_~i~0 2)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17210#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:24:53,022 INFO L290 TraceCheckUtils]: 7: Hoare triple {17210#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17211#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:24:53,023 INFO L290 TraceCheckUtils]: 8: Hoare triple {17211#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17212#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:24:53,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {17212#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17175#false} is VALID [2022-04-27 22:24:53,023 INFO L290 TraceCheckUtils]: 10: Hoare triple {17175#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,023 INFO L290 TraceCheckUtils]: 11: Hoare triple {17175#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {17175#false} is VALID [2022-04-27 22:24:53,023 INFO L290 TraceCheckUtils]: 12: Hoare triple {17175#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,023 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {17175#false} {17174#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,024 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 22:24:53,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 0: Hoare triple {17174#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {17174#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 2: Hoare triple {17174#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 3: Hoare triple {17174#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 4: Hoare triple {17174#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 5: Hoare triple {17174#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 6: Hoare triple {17174#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 7: Hoare triple {17174#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 8: Hoare triple {17174#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 9: Hoare triple {17174#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 10: Hoare triple {17174#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L290 TraceCheckUtils]: 11: Hoare triple {17174#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,028 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {17174#true} {17175#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,029 INFO L272 TraceCheckUtils]: 0: Hoare triple {17174#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17206#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:53,029 INFO L290 TraceCheckUtils]: 1: Hoare triple {17206#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {17174#true} is VALID [2022-04-27 22:24:53,029 INFO L290 TraceCheckUtils]: 2: Hoare triple {17174#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,029 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17174#true} {17174#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,029 INFO L272 TraceCheckUtils]: 4: Hoare triple {17174#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,029 INFO L290 TraceCheckUtils]: 5: Hoare triple {17174#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,029 INFO L290 TraceCheckUtils]: 6: Hoare triple {17174#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,029 INFO L272 TraceCheckUtils]: 7: Hoare triple {17174#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {17174#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {17207#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:53,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {17207#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17208#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:53,030 INFO L290 TraceCheckUtils]: 10: Hoare triple {17208#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {17209#(<= correct_version_~i~0 2)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,031 INFO L290 TraceCheckUtils]: 12: Hoare triple {17209#(<= correct_version_~i~0 2)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,031 INFO L290 TraceCheckUtils]: 13: Hoare triple {17209#(<= correct_version_~i~0 2)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,031 INFO L290 TraceCheckUtils]: 14: Hoare triple {17209#(<= correct_version_~i~0 2)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17210#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:24:53,032 INFO L290 TraceCheckUtils]: 15: Hoare triple {17210#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17211#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:24:53,032 INFO L290 TraceCheckUtils]: 16: Hoare triple {17211#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17212#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:24:53,032 INFO L290 TraceCheckUtils]: 17: Hoare triple {17212#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17175#false} is VALID [2022-04-27 22:24:53,032 INFO L290 TraceCheckUtils]: 18: Hoare triple {17175#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 19: Hoare triple {17175#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {17175#false} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {17175#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,033 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17175#false} {17174#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 22: Hoare triple {17175#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {17175#false} is VALID [2022-04-27 22:24:53,033 INFO L272 TraceCheckUtils]: 23: Hoare triple {17175#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 24: Hoare triple {17174#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 25: Hoare triple {17174#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 26: Hoare triple {17174#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 27: Hoare triple {17174#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 28: Hoare triple {17174#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 29: Hoare triple {17174#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 30: Hoare triple {17174#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 31: Hoare triple {17174#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 32: Hoare triple {17174#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,033 INFO L290 TraceCheckUtils]: 33: Hoare triple {17174#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,034 INFO L290 TraceCheckUtils]: 34: Hoare triple {17174#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {17174#true} is VALID [2022-04-27 22:24:53,034 INFO L290 TraceCheckUtils]: 35: Hoare triple {17174#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,034 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17174#true} {17175#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,034 INFO L290 TraceCheckUtils]: 37: Hoare triple {17175#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {17175#false} is VALID [2022-04-27 22:24:53,034 INFO L272 TraceCheckUtils]: 38: Hoare triple {17175#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {17175#false} is VALID [2022-04-27 22:24:53,034 INFO L290 TraceCheckUtils]: 39: Hoare triple {17175#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {17175#false} is VALID [2022-04-27 22:24:53,034 INFO L290 TraceCheckUtils]: 40: Hoare triple {17175#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,034 INFO L290 TraceCheckUtils]: 41: Hoare triple {17175#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,034 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:53,034 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:53,034 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [974348794] [2022-04-27 22:24:53,034 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [974348794] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:53,034 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1073116387] [2022-04-27 22:24:53,035 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:24:53,035 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:53,035 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:53,035 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-27 22:24:53,036 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-27 22:24:53,086 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 3 check-sat command(s) [2022-04-27 22:24:53,086 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:24:53,087 INFO L263 TraceCheckSpWp]: Trace formula consists of 203 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 22:24:53,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:53,094 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:53,177 INFO L272 TraceCheckUtils]: 0: Hoare triple {17174#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {17174#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {17174#true} is VALID [2022-04-27 22:24:53,177 INFO L290 TraceCheckUtils]: 2: Hoare triple {17174#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,177 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17174#true} {17174#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {17174#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {17174#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,177 INFO L290 TraceCheckUtils]: 6: Hoare triple {17174#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,177 INFO L272 TraceCheckUtils]: 7: Hoare triple {17174#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,178 INFO L290 TraceCheckUtils]: 8: Hoare triple {17174#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {17207#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:53,178 INFO L290 TraceCheckUtils]: 9: Hoare triple {17207#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17208#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:53,178 INFO L290 TraceCheckUtils]: 10: Hoare triple {17208#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,178 INFO L290 TraceCheckUtils]: 11: Hoare triple {17209#(<= correct_version_~i~0 2)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,179 INFO L290 TraceCheckUtils]: 12: Hoare triple {17209#(<= correct_version_~i~0 2)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,179 INFO L290 TraceCheckUtils]: 13: Hoare triple {17209#(<= correct_version_~i~0 2)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,179 INFO L290 TraceCheckUtils]: 14: Hoare triple {17209#(<= correct_version_~i~0 2)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17258#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 2))} is VALID [2022-04-27 22:24:53,207 INFO L290 TraceCheckUtils]: 15: Hoare triple {17258#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17262#(and (<= correct_version_~i~0 2) (<= 1 correct_version_~x~0))} is VALID [2022-04-27 22:24:53,208 INFO L290 TraceCheckUtils]: 16: Hoare triple {17262#(and (<= correct_version_~i~0 2) (<= 1 correct_version_~x~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17266#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 2))} is VALID [2022-04-27 22:24:53,208 INFO L290 TraceCheckUtils]: 17: Hoare triple {17266#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17175#false} is VALID [2022-04-27 22:24:53,208 INFO L290 TraceCheckUtils]: 18: Hoare triple {17175#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,208 INFO L290 TraceCheckUtils]: 19: Hoare triple {17175#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {17175#false} is VALID [2022-04-27 22:24:53,208 INFO L290 TraceCheckUtils]: 20: Hoare triple {17175#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,208 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17175#false} {17174#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 22: Hoare triple {17175#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L272 TraceCheckUtils]: 23: Hoare triple {17175#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 24: Hoare triple {17175#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 25: Hoare triple {17175#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 26: Hoare triple {17175#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 27: Hoare triple {17175#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 28: Hoare triple {17175#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 29: Hoare triple {17175#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 30: Hoare triple {17175#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 31: Hoare triple {17175#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 32: Hoare triple {17175#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 33: Hoare triple {17175#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 34: Hoare triple {17175#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {17175#false} is VALID [2022-04-27 22:24:53,209 INFO L290 TraceCheckUtils]: 35: Hoare triple {17175#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,210 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17175#false} {17175#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,210 INFO L290 TraceCheckUtils]: 37: Hoare triple {17175#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {17175#false} is VALID [2022-04-27 22:24:53,210 INFO L272 TraceCheckUtils]: 38: Hoare triple {17175#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {17175#false} is VALID [2022-04-27 22:24:53,210 INFO L290 TraceCheckUtils]: 39: Hoare triple {17175#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {17175#false} is VALID [2022-04-27 22:24:53,210 INFO L290 TraceCheckUtils]: 40: Hoare triple {17175#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,210 INFO L290 TraceCheckUtils]: 41: Hoare triple {17175#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,210 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:53,210 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:53,317 INFO L290 TraceCheckUtils]: 41: Hoare triple {17175#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,317 INFO L290 TraceCheckUtils]: 40: Hoare triple {17175#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,317 INFO L290 TraceCheckUtils]: 39: Hoare triple {17175#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {17175#false} is VALID [2022-04-27 22:24:53,317 INFO L272 TraceCheckUtils]: 38: Hoare triple {17175#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {17175#false} is VALID [2022-04-27 22:24:53,317 INFO L290 TraceCheckUtils]: 37: Hoare triple {17175#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {17175#false} is VALID [2022-04-27 22:24:53,317 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17174#true} {17175#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,317 INFO L290 TraceCheckUtils]: 35: Hoare triple {17174#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,317 INFO L290 TraceCheckUtils]: 34: Hoare triple {17174#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 33: Hoare triple {17174#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 32: Hoare triple {17174#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 31: Hoare triple {17174#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 30: Hoare triple {17174#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 29: Hoare triple {17174#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 28: Hoare triple {17174#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 27: Hoare triple {17174#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 26: Hoare triple {17174#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17174#true} is VALID [2022-04-27 22:24:53,318 INFO L290 TraceCheckUtils]: 25: Hoare triple {17174#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {17174#true} is VALID [2022-04-27 22:24:53,319 INFO L290 TraceCheckUtils]: 24: Hoare triple {17174#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {17174#true} is VALID [2022-04-27 22:24:53,319 INFO L272 TraceCheckUtils]: 23: Hoare triple {17175#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,319 INFO L290 TraceCheckUtils]: 22: Hoare triple {17175#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {17175#false} is VALID [2022-04-27 22:24:53,319 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17175#false} {17174#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {17175#false} is VALID [2022-04-27 22:24:53,319 INFO L290 TraceCheckUtils]: 20: Hoare triple {17175#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,319 INFO L290 TraceCheckUtils]: 19: Hoare triple {17175#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {17175#false} is VALID [2022-04-27 22:24:53,319 INFO L290 TraceCheckUtils]: 18: Hoare triple {17175#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {17175#false} is VALID [2022-04-27 22:24:53,319 INFO L290 TraceCheckUtils]: 17: Hoare triple {17212#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17175#false} is VALID [2022-04-27 22:24:53,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {17211#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17212#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:24:53,320 INFO L290 TraceCheckUtils]: 15: Hoare triple {17210#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17211#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:24:53,320 INFO L290 TraceCheckUtils]: 14: Hoare triple {17209#(<= correct_version_~i~0 2)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {17210#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:24:53,321 INFO L290 TraceCheckUtils]: 13: Hoare triple {17209#(<= correct_version_~i~0 2)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,321 INFO L290 TraceCheckUtils]: 12: Hoare triple {17209#(<= correct_version_~i~0 2)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,321 INFO L290 TraceCheckUtils]: 11: Hoare triple {17209#(<= correct_version_~i~0 2)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,321 INFO L290 TraceCheckUtils]: 10: Hoare triple {17208#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17209#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:24:53,322 INFO L290 TraceCheckUtils]: 9: Hoare triple {17207#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {17208#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:24:53,322 INFO L290 TraceCheckUtils]: 8: Hoare triple {17174#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {17207#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:24:53,322 INFO L272 TraceCheckUtils]: 7: Hoare triple {17174#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,322 INFO L290 TraceCheckUtils]: 6: Hoare triple {17174#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,322 INFO L290 TraceCheckUtils]: 5: Hoare triple {17174#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {17174#true} is VALID [2022-04-27 22:24:53,322 INFO L272 TraceCheckUtils]: 4: Hoare triple {17174#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,322 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17174#true} {17174#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,322 INFO L290 TraceCheckUtils]: 2: Hoare triple {17174#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,323 INFO L290 TraceCheckUtils]: 1: Hoare triple {17174#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {17174#true} is VALID [2022-04-27 22:24:53,323 INFO L272 TraceCheckUtils]: 0: Hoare triple {17174#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17174#true} is VALID [2022-04-27 22:24:53,323 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 22:24:53,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1073116387] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:53,323 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:53,323 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 12 [2022-04-27 22:24:53,323 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [76220851] [2022-04-27 22:24:53,323 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:53,324 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 11 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 42 [2022-04-27 22:24:53,324 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:53,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 11 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:53,350 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:24:53,350 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 22:24:53,350 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:53,350 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 22:24:53,350 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=93, Unknown=0, NotChecked=0, Total=132 [2022-04-27 22:24:53,351 INFO L87 Difference]: Start difference. First operand 152 states and 181 transitions. Second operand has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 11 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:54,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:54,350 INFO L93 Difference]: Finished difference Result 290 states and 347 transitions. [2022-04-27 22:24:54,350 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 22:24:54,351 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 11 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 42 [2022-04-27 22:24:54,351 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:54,351 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 11 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:54,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 83 transitions. [2022-04-27 22:24:54,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 11 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:54,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 83 transitions. [2022-04-27 22:24:54,352 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 83 transitions. [2022-04-27 22:24:54,413 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-27 22:24:54,416 INFO L225 Difference]: With dead ends: 290 [2022-04-27 22:24:54,416 INFO L226 Difference]: Without dead ends: 186 [2022-04-27 22:24:54,417 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 86 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 66 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=121, Invalid=299, Unknown=0, NotChecked=0, Total=420 [2022-04-27 22:24:54,417 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 61 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 252 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 73 SdHoareTripleChecker+Invalid, 265 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 252 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:54,417 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [65 Valid, 73 Invalid, 265 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 252 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:24:54,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 186 states. [2022-04-27 22:24:54,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 186 to 174. [2022-04-27 22:24:54,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:54,795 INFO L82 GeneralOperation]: Start isEquivalent. First operand 186 states. Second operand has 174 states, 150 states have (on average 1.2266666666666666) internal successors, (184), 160 states have internal predecessors, (184), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:54,795 INFO L74 IsIncluded]: Start isIncluded. First operand 186 states. Second operand has 174 states, 150 states have (on average 1.2266666666666666) internal successors, (184), 160 states have internal predecessors, (184), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:54,796 INFO L87 Difference]: Start difference. First operand 186 states. Second operand has 174 states, 150 states have (on average 1.2266666666666666) internal successors, (184), 160 states have internal predecessors, (184), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:54,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:54,798 INFO L93 Difference]: Finished difference Result 186 states and 220 transitions. [2022-04-27 22:24:54,798 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 220 transitions. [2022-04-27 22:24:54,798 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:54,798 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:54,798 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 150 states have (on average 1.2266666666666666) internal successors, (184), 160 states have internal predecessors, (184), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) Second operand 186 states. [2022-04-27 22:24:54,798 INFO L87 Difference]: Start difference. First operand has 174 states, 150 states have (on average 1.2266666666666666) internal successors, (184), 160 states have internal predecessors, (184), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) Second operand 186 states. [2022-04-27 22:24:54,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:54,800 INFO L93 Difference]: Finished difference Result 186 states and 220 transitions. [2022-04-27 22:24:54,800 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 220 transitions. [2022-04-27 22:24:54,801 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:54,801 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:54,801 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:54,801 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:54,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 150 states have (on average 1.2266666666666666) internal successors, (184), 160 states have internal predecessors, (184), 10 states have call successors, (10), 5 states have call predecessors, (10), 13 states have return successors, (14), 8 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-27 22:24:54,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 208 transitions. [2022-04-27 22:24:54,803 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 208 transitions. Word has length 42 [2022-04-27 22:24:54,803 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:54,803 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 208 transitions. [2022-04-27 22:24:54,803 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 11 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:54,804 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 208 transitions. [2022-04-27 22:24:54,804 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 22:24:54,804 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:54,804 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:54,823 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-27 22:24:55,021 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-27 22:24:55,021 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:24:55,021 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:24:55,021 INFO L85 PathProgramCache]: Analyzing trace with hash 813279436, now seen corresponding path program 19 times [2022-04-27 22:24:55,022 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:24:55,022 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [55349865] [2022-04-27 22:24:55,022 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:24:55,022 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:24:55,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:55,102 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:24:55,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:55,105 INFO L290 TraceCheckUtils]: 0: Hoare triple {18556#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {18517#true} is VALID [2022-04-27 22:24:55,105 INFO L290 TraceCheckUtils]: 1: Hoare triple {18517#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,105 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {18517#true} {18517#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,105 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:24:55,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:55,229 INFO L290 TraceCheckUtils]: 0: Hoare triple {18517#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,229 INFO L290 TraceCheckUtils]: 1: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,230 INFO L290 TraceCheckUtils]: 2: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,230 INFO L290 TraceCheckUtils]: 3: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:55,231 INFO L290 TraceCheckUtils]: 4: Hoare triple {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:55,231 INFO L290 TraceCheckUtils]: 5: Hoare triple {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:55,232 INFO L290 TraceCheckUtils]: 6: Hoare triple {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:55,232 INFO L290 TraceCheckUtils]: 7: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:55,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18562#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:24:55,233 INFO L290 TraceCheckUtils]: 9: Hoare triple {18562#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:55,233 INFO L290 TraceCheckUtils]: 10: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:55,234 INFO L290 TraceCheckUtils]: 11: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:55,234 INFO L290 TraceCheckUtils]: 12: Hoare triple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:55,235 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {18517#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {18536#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:24:55,235 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 22:24:55,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:55,353 INFO L290 TraceCheckUtils]: 0: Hoare triple {18517#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,353 INFO L290 TraceCheckUtils]: 1: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,353 INFO L290 TraceCheckUtils]: 2: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,354 INFO L290 TraceCheckUtils]: 3: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:55,354 INFO L290 TraceCheckUtils]: 4: Hoare triple {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:55,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:55,355 INFO L290 TraceCheckUtils]: 6: Hoare triple {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:55,355 INFO L290 TraceCheckUtils]: 7: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:55,355 INFO L290 TraceCheckUtils]: 8: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18570#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:24:55,356 INFO L290 TraceCheckUtils]: 9: Hoare triple {18570#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:55,356 INFO L290 TraceCheckUtils]: 10: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:55,356 INFO L290 TraceCheckUtils]: 11: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:55,356 INFO L290 TraceCheckUtils]: 12: Hoare triple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:55,357 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {18552#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:55,357 INFO L272 TraceCheckUtils]: 0: Hoare triple {18517#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18556#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:24:55,357 INFO L290 TraceCheckUtils]: 1: Hoare triple {18556#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {18517#true} is VALID [2022-04-27 22:24:55,357 INFO L290 TraceCheckUtils]: 2: Hoare triple {18517#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,358 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18517#true} {18517#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,358 INFO L272 TraceCheckUtils]: 4: Hoare triple {18517#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,358 INFO L290 TraceCheckUtils]: 5: Hoare triple {18517#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:55,358 INFO L290 TraceCheckUtils]: 6: Hoare triple {18517#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,358 INFO L272 TraceCheckUtils]: 7: Hoare triple {18517#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:55,358 INFO L290 TraceCheckUtils]: 8: Hoare triple {18517#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,358 INFO L290 TraceCheckUtils]: 9: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,359 INFO L290 TraceCheckUtils]: 10: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,359 INFO L290 TraceCheckUtils]: 11: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:55,359 INFO L290 TraceCheckUtils]: 12: Hoare triple {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:55,360 INFO L290 TraceCheckUtils]: 13: Hoare triple {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:55,360 INFO L290 TraceCheckUtils]: 14: Hoare triple {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:55,360 INFO L290 TraceCheckUtils]: 15: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:55,361 INFO L290 TraceCheckUtils]: 16: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18562#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:24:55,361 INFO L290 TraceCheckUtils]: 17: Hoare triple {18562#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:55,361 INFO L290 TraceCheckUtils]: 18: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:55,362 INFO L290 TraceCheckUtils]: 19: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:55,362 INFO L290 TraceCheckUtils]: 20: Hoare triple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:55,362 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {18517#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {18536#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:24:55,363 INFO L290 TraceCheckUtils]: 22: Hoare triple {18536#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:24:55,363 INFO L272 TraceCheckUtils]: 23: Hoare triple {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:55,363 INFO L290 TraceCheckUtils]: 24: Hoare triple {18517#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,363 INFO L290 TraceCheckUtils]: 25: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,363 INFO L290 TraceCheckUtils]: 26: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,364 INFO L290 TraceCheckUtils]: 27: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:55,364 INFO L290 TraceCheckUtils]: 28: Hoare triple {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:55,364 INFO L290 TraceCheckUtils]: 29: Hoare triple {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:55,365 INFO L290 TraceCheckUtils]: 30: Hoare triple {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:55,365 INFO L290 TraceCheckUtils]: 31: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:55,365 INFO L290 TraceCheckUtils]: 32: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18570#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:24:55,366 INFO L290 TraceCheckUtils]: 33: Hoare triple {18570#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:55,366 INFO L290 TraceCheckUtils]: 34: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:55,366 INFO L290 TraceCheckUtils]: 35: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:55,366 INFO L290 TraceCheckUtils]: 36: Hoare triple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:55,367 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {18552#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:55,367 INFO L290 TraceCheckUtils]: 38: Hoare triple {18552#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {18553#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:55,368 INFO L272 TraceCheckUtils]: 39: Hoare triple {18553#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {18554#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:24:55,368 INFO L290 TraceCheckUtils]: 40: Hoare triple {18554#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {18555#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:24:55,368 INFO L290 TraceCheckUtils]: 41: Hoare triple {18555#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {18518#false} is VALID [2022-04-27 22:24:55,368 INFO L290 TraceCheckUtils]: 42: Hoare triple {18518#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18518#false} is VALID [2022-04-27 22:24:55,368 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:55,368 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:24:55,369 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [55349865] [2022-04-27 22:24:55,369 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [55349865] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:24:55,369 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1332907114] [2022-04-27 22:24:55,369 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:24:55,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:24:55,369 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:24:55,370 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-27 22:24:55,399 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-27 22:24:55,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:55,426 INFO L263 TraceCheckSpWp]: Trace formula consists of 208 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-27 22:24:55,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:24:55,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:24:55,813 INFO L272 TraceCheckUtils]: 0: Hoare triple {18517#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,814 INFO L290 TraceCheckUtils]: 1: Hoare triple {18517#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {18517#true} is VALID [2022-04-27 22:24:55,814 INFO L290 TraceCheckUtils]: 2: Hoare triple {18517#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,814 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18517#true} {18517#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,814 INFO L272 TraceCheckUtils]: 4: Hoare triple {18517#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,814 INFO L290 TraceCheckUtils]: 5: Hoare triple {18517#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:55,814 INFO L290 TraceCheckUtils]: 6: Hoare triple {18517#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:55,814 INFO L272 TraceCheckUtils]: 7: Hoare triple {18517#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:55,815 INFO L290 TraceCheckUtils]: 8: Hoare triple {18517#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,815 INFO L290 TraceCheckUtils]: 9: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,815 INFO L290 TraceCheckUtils]: 10: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:55,816 INFO L290 TraceCheckUtils]: 11: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:55,816 INFO L290 TraceCheckUtils]: 12: Hoare triple {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:55,817 INFO L290 TraceCheckUtils]: 13: Hoare triple {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:55,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:55,817 INFO L290 TraceCheckUtils]: 15: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:55,818 INFO L290 TraceCheckUtils]: 16: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18624#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:55,818 INFO L290 TraceCheckUtils]: 17: Hoare triple {18624#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:55,819 INFO L290 TraceCheckUtils]: 18: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:55,819 INFO L290 TraceCheckUtils]: 19: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:55,819 INFO L290 TraceCheckUtils]: 20: Hoare triple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:55,820 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {18517#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {18536#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:24:55,820 INFO L290 TraceCheckUtils]: 22: Hoare triple {18536#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:24:55,820 INFO L272 TraceCheckUtils]: 23: Hoare triple {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:55,821 INFO L290 TraceCheckUtils]: 24: Hoare triple {18517#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,821 INFO L290 TraceCheckUtils]: 25: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,821 INFO L290 TraceCheckUtils]: 26: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:55,822 INFO L290 TraceCheckUtils]: 27: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:55,822 INFO L290 TraceCheckUtils]: 28: Hoare triple {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:55,823 INFO L290 TraceCheckUtils]: 29: Hoare triple {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:55,823 INFO L290 TraceCheckUtils]: 30: Hoare triple {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:55,824 INFO L290 TraceCheckUtils]: 31: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:55,824 INFO L290 TraceCheckUtils]: 32: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18673#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:55,824 INFO L290 TraceCheckUtils]: 33: Hoare triple {18673#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:55,825 INFO L290 TraceCheckUtils]: 34: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:55,825 INFO L290 TraceCheckUtils]: 35: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:55,825 INFO L290 TraceCheckUtils]: 36: Hoare triple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:55,826 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {18689#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0) (<= |main_#t~ret9| 4) (<= 4 |main_#t~ret9|))} is VALID [2022-04-27 22:24:55,826 INFO L290 TraceCheckUtils]: 38: Hoare triple {18689#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0) (<= |main_#t~ret9| 4) (<= 4 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {18693#(and (<= main_~n_stones1~0 4) (<= main_~n_stones2~0 4) (<= 4 main_~n_stones1~0) (<= 4 main_~n_stones2~0))} is VALID [2022-04-27 22:24:55,827 INFO L272 TraceCheckUtils]: 39: Hoare triple {18693#(and (<= main_~n_stones1~0 4) (<= main_~n_stones2~0 4) (<= 4 main_~n_stones1~0) (<= 4 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {18697#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:55,827 INFO L290 TraceCheckUtils]: 40: Hoare triple {18697#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {18701#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:55,827 INFO L290 TraceCheckUtils]: 41: Hoare triple {18701#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {18518#false} is VALID [2022-04-27 22:24:55,828 INFO L290 TraceCheckUtils]: 42: Hoare triple {18518#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18518#false} is VALID [2022-04-27 22:24:55,828 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:55,828 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:24:56,150 INFO L290 TraceCheckUtils]: 42: Hoare triple {18518#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18518#false} is VALID [2022-04-27 22:24:56,150 INFO L290 TraceCheckUtils]: 41: Hoare triple {18701#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {18518#false} is VALID [2022-04-27 22:24:56,150 INFO L290 TraceCheckUtils]: 40: Hoare triple {18697#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {18701#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:24:56,151 INFO L272 TraceCheckUtils]: 39: Hoare triple {18553#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {18697#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:24:56,151 INFO L290 TraceCheckUtils]: 38: Hoare triple {18552#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {18553#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:24:56,152 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {18552#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:24:56,152 INFO L290 TraceCheckUtils]: 36: Hoare triple {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:56,152 INFO L290 TraceCheckUtils]: 35: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {18572#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:24:56,152 INFO L290 TraceCheckUtils]: 34: Hoare triple {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:56,153 INFO L290 TraceCheckUtils]: 33: Hoare triple {18570#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18571#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:24:56,153 INFO L290 TraceCheckUtils]: 32: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {18570#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:24:56,153 INFO L290 TraceCheckUtils]: 31: Hoare triple {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:56,154 INFO L290 TraceCheckUtils]: 30: Hoare triple {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18569#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:24:56,154 INFO L290 TraceCheckUtils]: 29: Hoare triple {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18568#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:24:56,155 INFO L290 TraceCheckUtils]: 28: Hoare triple {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18567#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:24:56,155 INFO L290 TraceCheckUtils]: 27: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {18566#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:24:56,155 INFO L290 TraceCheckUtils]: 26: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:56,156 INFO L290 TraceCheckUtils]: 25: Hoare triple {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:56,156 INFO L290 TraceCheckUtils]: 24: Hoare triple {18517#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {18565#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:24:56,156 INFO L272 TraceCheckUtils]: 23: Hoare triple {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:56,156 INFO L290 TraceCheckUtils]: 22: Hoare triple {18536#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {18537#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:24:56,157 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {18517#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {18536#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:24:56,157 INFO L290 TraceCheckUtils]: 20: Hoare triple {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:56,157 INFO L290 TraceCheckUtils]: 19: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {18564#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:24:56,157 INFO L290 TraceCheckUtils]: 18: Hoare triple {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:56,158 INFO L290 TraceCheckUtils]: 17: Hoare triple {18562#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18563#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:24:56,158 INFO L290 TraceCheckUtils]: 16: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {18562#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:24:56,158 INFO L290 TraceCheckUtils]: 15: Hoare triple {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:56,159 INFO L290 TraceCheckUtils]: 14: Hoare triple {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18561#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:24:56,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18560#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:24:56,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18559#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:24:56,160 INFO L290 TraceCheckUtils]: 11: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {18558#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:24:56,160 INFO L290 TraceCheckUtils]: 10: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:56,160 INFO L290 TraceCheckUtils]: 9: Hoare triple {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:56,160 INFO L290 TraceCheckUtils]: 8: Hoare triple {18517#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {18557#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:24:56,161 INFO L272 TraceCheckUtils]: 7: Hoare triple {18517#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L290 TraceCheckUtils]: 6: Hoare triple {18517#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L290 TraceCheckUtils]: 5: Hoare triple {18517#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L272 TraceCheckUtils]: 4: Hoare triple {18517#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18517#true} {18517#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L290 TraceCheckUtils]: 2: Hoare triple {18517#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {18517#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L272 TraceCheckUtils]: 0: Hoare triple {18517#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18517#true} is VALID [2022-04-27 22:24:56,161 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:24:56,161 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1332907114] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:24:56,161 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:24:56,161 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 24, 24] total 31 [2022-04-27 22:24:56,162 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [668108837] [2022-04-27 22:24:56,162 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:24:56,162 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 43 [2022-04-27 22:24:56,162 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:24:56,162 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:56,183 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-27 22:24:56,184 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-04-27 22:24:56,184 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:24:56,184 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-04-27 22:24:56,184 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=861, Unknown=0, NotChecked=0, Total=930 [2022-04-27 22:24:56,184 INFO L87 Difference]: Start difference. First operand 174 states and 208 transitions. Second operand has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:59,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:59,447 INFO L93 Difference]: Finished difference Result 224 states and 267 transitions. [2022-04-27 22:24:59,447 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 22:24:59,447 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 43 [2022-04-27 22:24:59,447 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:24:59,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:59,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 126 transitions. [2022-04-27 22:24:59,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:59,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 126 transitions. [2022-04-27 22:24:59,453 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 126 transitions. [2022-04-27 22:24:59,532 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-27 22:24:59,535 INFO L225 Difference]: With dead ends: 224 [2022-04-27 22:24:59,535 INFO L226 Difference]: Without dead ends: 218 [2022-04-27 22:24:59,537 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 80 SyntacticMatches, 5 SemanticMatches, 52 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 398 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=193, Invalid=2669, Unknown=0, NotChecked=0, Total=2862 [2022-04-27 22:24:59,537 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 128 mSDsluCounter, 122 mSDsCounter, 0 mSdLazyCounter, 2053 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 132 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 2090 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 2053 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:24:59,537 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [132 Valid, 180 Invalid, 2090 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 2053 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-27 22:24:59,537 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 218 states. [2022-04-27 22:24:59,911 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 218 to 190. [2022-04-27 22:24:59,911 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:24:59,911 INFO L82 GeneralOperation]: Start isEquivalent. First operand 218 states. Second operand has 190 states, 163 states have (on average 1.2208588957055215) internal successors, (199), 175 states have internal predecessors, (199), 11 states have call successors, (11), 5 states have call predecessors, (11), 15 states have return successors, (17), 9 states have call predecessors, (17), 9 states have call successors, (17) [2022-04-27 22:24:59,912 INFO L74 IsIncluded]: Start isIncluded. First operand 218 states. Second operand has 190 states, 163 states have (on average 1.2208588957055215) internal successors, (199), 175 states have internal predecessors, (199), 11 states have call successors, (11), 5 states have call predecessors, (11), 15 states have return successors, (17), 9 states have call predecessors, (17), 9 states have call successors, (17) [2022-04-27 22:24:59,912 INFO L87 Difference]: Start difference. First operand 218 states. Second operand has 190 states, 163 states have (on average 1.2208588957055215) internal successors, (199), 175 states have internal predecessors, (199), 11 states have call successors, (11), 5 states have call predecessors, (11), 15 states have return successors, (17), 9 states have call predecessors, (17), 9 states have call successors, (17) [2022-04-27 22:24:59,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:59,926 INFO L93 Difference]: Finished difference Result 218 states and 261 transitions. [2022-04-27 22:24:59,926 INFO L276 IsEmpty]: Start isEmpty. Operand 218 states and 261 transitions. [2022-04-27 22:24:59,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:59,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:59,927 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 163 states have (on average 1.2208588957055215) internal successors, (199), 175 states have internal predecessors, (199), 11 states have call successors, (11), 5 states have call predecessors, (11), 15 states have return successors, (17), 9 states have call predecessors, (17), 9 states have call successors, (17) Second operand 218 states. [2022-04-27 22:24:59,927 INFO L87 Difference]: Start difference. First operand has 190 states, 163 states have (on average 1.2208588957055215) internal successors, (199), 175 states have internal predecessors, (199), 11 states have call successors, (11), 5 states have call predecessors, (11), 15 states have return successors, (17), 9 states have call predecessors, (17), 9 states have call successors, (17) Second operand 218 states. [2022-04-27 22:24:59,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:24:59,929 INFO L93 Difference]: Finished difference Result 218 states and 261 transitions. [2022-04-27 22:24:59,929 INFO L276 IsEmpty]: Start isEmpty. Operand 218 states and 261 transitions. [2022-04-27 22:24:59,930 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:24:59,930 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:24:59,930 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:24:59,930 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:24:59,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 163 states have (on average 1.2208588957055215) internal successors, (199), 175 states have internal predecessors, (199), 11 states have call successors, (11), 5 states have call predecessors, (11), 15 states have return successors, (17), 9 states have call predecessors, (17), 9 states have call successors, (17) [2022-04-27 22:24:59,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 227 transitions. [2022-04-27 22:24:59,933 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 227 transitions. Word has length 43 [2022-04-27 22:24:59,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:24:59,933 INFO L495 AbstractCegarLoop]: Abstraction has 190 states and 227 transitions. [2022-04-27 22:24:59,933 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:24:59,933 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 227 transitions. [2022-04-27 22:24:59,934 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 22:24:59,934 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:24:59,934 INFO L195 NwaCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1] [2022-04-27 22:24:59,968 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-04-27 22:25:00,147 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-27 22:25:00,148 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:00,148 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:00,148 INFO L85 PathProgramCache]: Analyzing trace with hash -1078382385, now seen corresponding path program 20 times [2022-04-27 22:25:00,148 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:00,148 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [957270156] [2022-04-27 22:25:00,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:00,148 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:00,162 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:00,174 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:00,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:00,176 INFO L290 TraceCheckUtils]: 0: Hoare triple {19946#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {19912#true} is VALID [2022-04-27 22:25:00,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {19912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:00,176 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {19912#true} {19912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:00,177 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:00,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:00,238 INFO L290 TraceCheckUtils]: 0: Hoare triple {19912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {19947#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:00,238 INFO L290 TraceCheckUtils]: 1: Hoare triple {19947#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {19948#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:00,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {19948#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {19949#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:25:00,239 INFO L290 TraceCheckUtils]: 3: Hoare triple {19949#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {19950#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| (* 2 correct_version_~a)))} is VALID [2022-04-27 22:25:00,239 INFO L290 TraceCheckUtils]: 4: Hoare triple {19950#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| (* 2 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,240 INFO L290 TraceCheckUtils]: 5: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,240 INFO L290 TraceCheckUtils]: 6: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,240 INFO L290 TraceCheckUtils]: 7: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,240 INFO L290 TraceCheckUtils]: 8: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,241 INFO L290 TraceCheckUtils]: 9: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,241 INFO L290 TraceCheckUtils]: 10: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,241 INFO L290 TraceCheckUtils]: 11: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,242 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} {19912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {19930#(<= main_~n~0 (* main_~a~0 2))} is VALID [2022-04-27 22:25:00,242 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 22:25:00,248 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:00,341 INFO L290 TraceCheckUtils]: 0: Hoare triple {19912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {19952#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {19952#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19953#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,342 INFO L290 TraceCheckUtils]: 2: Hoare triple {19953#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19954#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,342 INFO L290 TraceCheckUtils]: 3: Hoare triple {19954#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19955#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,343 INFO L290 TraceCheckUtils]: 4: Hoare triple {19955#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {19956#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:25:00,343 INFO L290 TraceCheckUtils]: 5: Hoare triple {19956#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,343 INFO L290 TraceCheckUtils]: 6: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,343 INFO L290 TraceCheckUtils]: 7: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,344 INFO L290 TraceCheckUtils]: 8: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,344 INFO L290 TraceCheckUtils]: 9: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,344 INFO L290 TraceCheckUtils]: 10: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,344 INFO L290 TraceCheckUtils]: 11: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,345 INFO L290 TraceCheckUtils]: 12: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,345 INFO L290 TraceCheckUtils]: 13: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,345 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} {19930#(<= main_~n~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {19913#false} is VALID [2022-04-27 22:25:00,346 INFO L272 TraceCheckUtils]: 0: Hoare triple {19912#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19946#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:00,346 INFO L290 TraceCheckUtils]: 1: Hoare triple {19946#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {19912#true} is VALID [2022-04-27 22:25:00,346 INFO L290 TraceCheckUtils]: 2: Hoare triple {19912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:00,346 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19912#true} {19912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:00,346 INFO L272 TraceCheckUtils]: 4: Hoare triple {19912#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:00,346 INFO L290 TraceCheckUtils]: 5: Hoare triple {19912#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:00,346 INFO L290 TraceCheckUtils]: 6: Hoare triple {19912#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:00,346 INFO L272 TraceCheckUtils]: 7: Hoare triple {19912#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:00,347 INFO L290 TraceCheckUtils]: 8: Hoare triple {19912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {19947#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:00,347 INFO L290 TraceCheckUtils]: 9: Hoare triple {19947#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {19948#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:00,348 INFO L290 TraceCheckUtils]: 10: Hoare triple {19948#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {19949#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:25:00,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {19949#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {19950#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| (* 2 correct_version_~a)))} is VALID [2022-04-27 22:25:00,348 INFO L290 TraceCheckUtils]: 12: Hoare triple {19950#(and (= |correct_version_#in~a| correct_version_~a) (<= |correct_version_#in~n| (* 2 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,349 INFO L290 TraceCheckUtils]: 13: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,349 INFO L290 TraceCheckUtils]: 14: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,349 INFO L290 TraceCheckUtils]: 15: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,349 INFO L290 TraceCheckUtils]: 16: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,350 INFO L290 TraceCheckUtils]: 17: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,350 INFO L290 TraceCheckUtils]: 18: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,350 INFO L290 TraceCheckUtils]: 19: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:00,351 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} {19912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {19930#(<= main_~n~0 (* main_~a~0 2))} is VALID [2022-04-27 22:25:00,351 INFO L290 TraceCheckUtils]: 21: Hoare triple {19930#(<= main_~n~0 (* main_~a~0 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {19930#(<= main_~n~0 (* main_~a~0 2))} is VALID [2022-04-27 22:25:00,351 INFO L272 TraceCheckUtils]: 22: Hoare triple {19930#(<= main_~n~0 (* main_~a~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:00,351 INFO L290 TraceCheckUtils]: 23: Hoare triple {19912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {19952#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,352 INFO L290 TraceCheckUtils]: 24: Hoare triple {19952#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19953#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,352 INFO L290 TraceCheckUtils]: 25: Hoare triple {19953#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19954#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,353 INFO L290 TraceCheckUtils]: 26: Hoare triple {19954#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19955#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:00,353 INFO L290 TraceCheckUtils]: 27: Hoare triple {19955#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {19956#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:25:00,353 INFO L290 TraceCheckUtils]: 28: Hoare triple {19956#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 2 student_version_~a) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,354 INFO L290 TraceCheckUtils]: 29: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,354 INFO L290 TraceCheckUtils]: 30: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,354 INFO L290 TraceCheckUtils]: 31: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,354 INFO L290 TraceCheckUtils]: 32: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,355 INFO L290 TraceCheckUtils]: 33: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,355 INFO L290 TraceCheckUtils]: 34: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,355 INFO L290 TraceCheckUtils]: 35: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,355 INFO L290 TraceCheckUtils]: 36: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:00,356 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} {19930#(<= main_~n~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {19913#false} is VALID [2022-04-27 22:25:00,356 INFO L290 TraceCheckUtils]: 38: Hoare triple {19913#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {19913#false} is VALID [2022-04-27 22:25:00,356 INFO L272 TraceCheckUtils]: 39: Hoare triple {19913#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {19913#false} is VALID [2022-04-27 22:25:00,356 INFO L290 TraceCheckUtils]: 40: Hoare triple {19913#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {19913#false} is VALID [2022-04-27 22:25:00,356 INFO L290 TraceCheckUtils]: 41: Hoare triple {19913#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {19913#false} is VALID [2022-04-27 22:25:00,356 INFO L290 TraceCheckUtils]: 42: Hoare triple {19913#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19913#false} is VALID [2022-04-27 22:25:00,356 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-04-27 22:25:00,356 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:00,356 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [957270156] [2022-04-27 22:25:00,357 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [957270156] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:00,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1307747888] [2022-04-27 22:25:00,357 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:25:00,357 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:00,357 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:00,372 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-27 22:25:00,373 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-27 22:25:00,423 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:25:00,424 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:00,424 INFO L263 TraceCheckSpWp]: Trace formula consists of 208 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-27 22:25:00,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:00,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:01,030 INFO L272 TraceCheckUtils]: 0: Hoare triple {19912#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,030 INFO L290 TraceCheckUtils]: 1: Hoare triple {19912#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {19912#true} is VALID [2022-04-27 22:25:01,030 INFO L290 TraceCheckUtils]: 2: Hoare triple {19912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,030 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19912#true} {19912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,030 INFO L272 TraceCheckUtils]: 4: Hoare triple {19912#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,030 INFO L290 TraceCheckUtils]: 5: Hoare triple {19912#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:01,030 INFO L290 TraceCheckUtils]: 6: Hoare triple {19912#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,030 INFO L272 TraceCheckUtils]: 7: Hoare triple {19912#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:01,031 INFO L290 TraceCheckUtils]: 8: Hoare triple {19912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {19985#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,031 INFO L290 TraceCheckUtils]: 9: Hoare triple {19985#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {19989#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,032 INFO L290 TraceCheckUtils]: 10: Hoare triple {19989#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {19993#(and (<= (div (- correct_version_~b~0) (- 2)) |correct_version_#in~a|) (<= |correct_version_#in~n| correct_version_~n))} is VALID [2022-04-27 22:25:01,032 INFO L290 TraceCheckUtils]: 11: Hoare triple {19993#(and (<= (div (- correct_version_~b~0) (- 2)) |correct_version_#in~a|) (<= |correct_version_#in~n| correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,032 INFO L290 TraceCheckUtils]: 12: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,033 INFO L290 TraceCheckUtils]: 13: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,033 INFO L290 TraceCheckUtils]: 14: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,033 INFO L290 TraceCheckUtils]: 15: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,033 INFO L290 TraceCheckUtils]: 16: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,034 INFO L290 TraceCheckUtils]: 17: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,034 INFO L290 TraceCheckUtils]: 18: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,034 INFO L290 TraceCheckUtils]: 19: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,034 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} {19912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {19930#(<= main_~n~0 (* main_~a~0 2))} is VALID [2022-04-27 22:25:01,035 INFO L290 TraceCheckUtils]: 21: Hoare triple {19930#(<= main_~n~0 (* main_~a~0 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {19930#(<= main_~n~0 (* main_~a~0 2))} is VALID [2022-04-27 22:25:01,035 INFO L272 TraceCheckUtils]: 22: Hoare triple {19930#(<= main_~n~0 (* main_~a~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:01,037 INFO L290 TraceCheckUtils]: 23: Hoare triple {19912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {20033#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:25:01,038 INFO L290 TraceCheckUtils]: 24: Hoare triple {20033#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {20037#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:25:01,038 INFO L290 TraceCheckUtils]: 25: Hoare triple {20037#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {20041#(and (<= |student_version_#in~a| (div student_version_~b~1 2)) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:25:01,038 INFO L290 TraceCheckUtils]: 26: Hoare triple {20041#(and (<= |student_version_#in~a| (div student_version_~b~1 2)) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,039 INFO L290 TraceCheckUtils]: 27: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,039 INFO L290 TraceCheckUtils]: 28: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,039 INFO L290 TraceCheckUtils]: 29: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,039 INFO L290 TraceCheckUtils]: 30: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,039 INFO L290 TraceCheckUtils]: 31: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,040 INFO L290 TraceCheckUtils]: 32: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,040 INFO L290 TraceCheckUtils]: 33: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,040 INFO L290 TraceCheckUtils]: 34: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,040 INFO L290 TraceCheckUtils]: 35: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,040 INFO L290 TraceCheckUtils]: 36: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,041 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} {19930#(<= main_~n~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {19913#false} is VALID [2022-04-27 22:25:01,041 INFO L290 TraceCheckUtils]: 38: Hoare triple {19913#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {19913#false} is VALID [2022-04-27 22:25:01,041 INFO L272 TraceCheckUtils]: 39: Hoare triple {19913#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {19913#false} is VALID [2022-04-27 22:25:01,041 INFO L290 TraceCheckUtils]: 40: Hoare triple {19913#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {19913#false} is VALID [2022-04-27 22:25:01,041 INFO L290 TraceCheckUtils]: 41: Hoare triple {19913#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {19913#false} is VALID [2022-04-27 22:25:01,041 INFO L290 TraceCheckUtils]: 42: Hoare triple {19913#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19913#false} is VALID [2022-04-27 22:25:01,041 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 22:25:01,042 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:01,846 INFO L290 TraceCheckUtils]: 42: Hoare triple {19913#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19913#false} is VALID [2022-04-27 22:25:01,846 INFO L290 TraceCheckUtils]: 41: Hoare triple {19913#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {19913#false} is VALID [2022-04-27 22:25:01,846 INFO L290 TraceCheckUtils]: 40: Hoare triple {19913#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {19913#false} is VALID [2022-04-27 22:25:01,846 INFO L272 TraceCheckUtils]: 39: Hoare triple {19913#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {19913#false} is VALID [2022-04-27 22:25:01,847 INFO L290 TraceCheckUtils]: 38: Hoare triple {19913#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {19913#false} is VALID [2022-04-27 22:25:01,860 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} {19930#(<= main_~n~0 (* main_~a~0 2))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {19913#false} is VALID [2022-04-27 22:25:01,860 INFO L290 TraceCheckUtils]: 36: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,860 INFO L290 TraceCheckUtils]: 35: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,861 INFO L290 TraceCheckUtils]: 34: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,861 INFO L290 TraceCheckUtils]: 33: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,861 INFO L290 TraceCheckUtils]: 32: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,861 INFO L290 TraceCheckUtils]: 31: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,862 INFO L290 TraceCheckUtils]: 30: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,862 INFO L290 TraceCheckUtils]: 29: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,862 INFO L290 TraceCheckUtils]: 28: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,862 INFO L290 TraceCheckUtils]: 27: Hoare triple {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,863 INFO L290 TraceCheckUtils]: 26: Hoare triple {20144#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|) (not (< student_version_~b~1 student_version_~n)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {19957#(<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:25:01,863 INFO L290 TraceCheckUtils]: 25: Hoare triple {20148#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 student_version_~a)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {20144#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|) (not (< student_version_~b~1 student_version_~n)))} is VALID [2022-04-27 22:25:01,864 INFO L290 TraceCheckUtils]: 24: Hoare triple {20152#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {20148#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 student_version_~a)))} is VALID [2022-04-27 22:25:01,864 INFO L290 TraceCheckUtils]: 23: Hoare triple {19912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {20152#(or (<= (+ (* |student_version_#in~a| 2) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:25:01,865 INFO L272 TraceCheckUtils]: 22: Hoare triple {19930#(<= main_~n~0 (* main_~a~0 2))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:01,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {19930#(<= main_~n~0 (* main_~a~0 2))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {19930#(<= main_~n~0 (* main_~a~0 2))} is VALID [2022-04-27 22:25:01,866 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} {19912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {19930#(<= main_~n~0 (* main_~a~0 2))} is VALID [2022-04-27 22:25:01,866 INFO L290 TraceCheckUtils]: 19: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,866 INFO L290 TraceCheckUtils]: 18: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,866 INFO L290 TraceCheckUtils]: 17: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,867 INFO L290 TraceCheckUtils]: 16: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,867 INFO L290 TraceCheckUtils]: 15: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,868 INFO L290 TraceCheckUtils]: 13: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,868 INFO L290 TraceCheckUtils]: 12: Hoare triple {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,868 INFO L290 TraceCheckUtils]: 11: Hoare triple {20192#(or (<= |correct_version_#in~n| (* 2 |correct_version_#in~a|)) (< correct_version_~b~0 correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {19951#(<= |correct_version_#in~n| (* 2 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:01,869 INFO L290 TraceCheckUtils]: 10: Hoare triple {20196#(or (<= |correct_version_#in~n| (* 2 |correct_version_#in~a|)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {20192#(or (<= |correct_version_#in~n| (* 2 |correct_version_#in~a|)) (< correct_version_~b~0 correct_version_~n))} is VALID [2022-04-27 22:25:01,869 INFO L290 TraceCheckUtils]: 9: Hoare triple {20200#(or (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n) (<= |correct_version_#in~n| (* 2 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {20196#(or (<= |correct_version_#in~n| (* 2 |correct_version_#in~a|)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} is VALID [2022-04-27 22:25:01,870 INFO L290 TraceCheckUtils]: 8: Hoare triple {19912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {20200#(or (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n) (<= |correct_version_#in~n| (* 2 |correct_version_#in~a|)))} is VALID [2022-04-27 22:25:01,870 INFO L272 TraceCheckUtils]: 7: Hoare triple {19912#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L290 TraceCheckUtils]: 6: Hoare triple {19912#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L290 TraceCheckUtils]: 5: Hoare triple {19912#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L272 TraceCheckUtils]: 4: Hoare triple {19912#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19912#true} {19912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {19912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {19912#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L272 TraceCheckUtils]: 0: Hoare triple {19912#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19912#true} is VALID [2022-04-27 22:25:01,870 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 22:25:01,871 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1307747888] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:01,871 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:01,871 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 11, 11] total 27 [2022-04-27 22:25:01,871 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [916107080] [2022-04-27 22:25:01,871 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:01,871 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 43 [2022-04-27 22:25:01,871 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:01,872 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:01,913 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:01,913 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-04-27 22:25:01,913 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:01,915 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-04-27 22:25:01,915 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=88, Invalid=614, Unknown=0, NotChecked=0, Total=702 [2022-04-27 22:25:01,916 INFO L87 Difference]: Start difference. First operand 190 states and 227 transitions. Second operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:03,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:03,622 INFO L93 Difference]: Finished difference Result 230 states and 273 transitions. [2022-04-27 22:25:03,622 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 22:25:03,623 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 43 [2022-04-27 22:25:03,623 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:03,623 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:03,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 90 transitions. [2022-04-27 22:25:03,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:03,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 90 transitions. [2022-04-27 22:25:03,625 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 90 transitions. [2022-04-27 22:25:03,672 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:03,683 INFO L225 Difference]: With dead ends: 230 [2022-04-27 22:25:03,683 INFO L226 Difference]: Without dead ends: 215 [2022-04-27 22:25:03,684 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 72 SyntacticMatches, 6 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 174 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=185, Invalid=1297, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:25:03,685 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 192 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 775 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 196 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 802 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 775 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:03,685 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [196 Valid, 114 Invalid, 802 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 775 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-27 22:25:03,685 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 215 states. [2022-04-27 22:25:04,196 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 215 to 210. [2022-04-27 22:25:04,196 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:04,197 INFO L82 GeneralOperation]: Start isEquivalent. First operand 215 states. Second operand has 210 states, 174 states have (on average 1.2011494252873562) internal successors, (209), 192 states have internal predecessors, (209), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:04,197 INFO L74 IsIncluded]: Start isIncluded. First operand 215 states. Second operand has 210 states, 174 states have (on average 1.2011494252873562) internal successors, (209), 192 states have internal predecessors, (209), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:04,197 INFO L87 Difference]: Start difference. First operand 215 states. Second operand has 210 states, 174 states have (on average 1.2011494252873562) internal successors, (209), 192 states have internal predecessors, (209), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:04,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:04,212 INFO L93 Difference]: Finished difference Result 215 states and 254 transitions. [2022-04-27 22:25:04,212 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 254 transitions. [2022-04-27 22:25:04,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:04,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:04,213 INFO L74 IsIncluded]: Start isIncluded. First operand has 210 states, 174 states have (on average 1.2011494252873562) internal successors, (209), 192 states have internal predecessors, (209), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) Second operand 215 states. [2022-04-27 22:25:04,213 INFO L87 Difference]: Start difference. First operand has 210 states, 174 states have (on average 1.2011494252873562) internal successors, (209), 192 states have internal predecessors, (209), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) Second operand 215 states. [2022-04-27 22:25:04,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:04,223 INFO L93 Difference]: Finished difference Result 215 states and 254 transitions. [2022-04-27 22:25:04,223 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 254 transitions. [2022-04-27 22:25:04,223 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:04,223 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:04,223 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:04,223 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:04,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 210 states, 174 states have (on average 1.2011494252873562) internal successors, (209), 192 states have internal predecessors, (209), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:04,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 249 transitions. [2022-04-27 22:25:04,227 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 249 transitions. Word has length 43 [2022-04-27 22:25:04,227 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:04,227 INFO L495 AbstractCegarLoop]: Abstraction has 210 states and 249 transitions. [2022-04-27 22:25:04,227 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:04,227 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 249 transitions. [2022-04-27 22:25:04,228 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 22:25:04,228 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:04,228 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:04,244 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:04,444 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:04,444 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:04,444 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:04,444 INFO L85 PathProgramCache]: Analyzing trace with hash 236349687, now seen corresponding path program 21 times [2022-04-27 22:25:04,444 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:04,444 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1623422046] [2022-04-27 22:25:04,445 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:04,445 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:04,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:04,539 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:04,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:04,541 INFO L290 TraceCheckUtils]: 0: Hoare triple {21331#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {21292#true} is VALID [2022-04-27 22:25:04,542 INFO L290 TraceCheckUtils]: 1: Hoare triple {21292#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:04,542 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {21292#true} {21292#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:04,542 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:04,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:04,618 INFO L290 TraceCheckUtils]: 0: Hoare triple {21292#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,619 INFO L290 TraceCheckUtils]: 1: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,619 INFO L290 TraceCheckUtils]: 2: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,619 INFO L290 TraceCheckUtils]: 3: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,620 INFO L290 TraceCheckUtils]: 4: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:04,620 INFO L290 TraceCheckUtils]: 5: Hoare triple {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:04,620 INFO L290 TraceCheckUtils]: 6: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:04,621 INFO L290 TraceCheckUtils]: 7: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:04,621 INFO L290 TraceCheckUtils]: 8: Hoare triple {21335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21336#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:25:04,621 INFO L290 TraceCheckUtils]: 9: Hoare triple {21336#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:04,622 INFO L290 TraceCheckUtils]: 10: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:04,622 INFO L290 TraceCheckUtils]: 11: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:04,622 INFO L290 TraceCheckUtils]: 12: Hoare triple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:04,623 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {21292#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {21311#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:25:04,623 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 22:25:04,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:04,820 INFO L290 TraceCheckUtils]: 0: Hoare triple {21292#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,821 INFO L290 TraceCheckUtils]: 2: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,821 INFO L290 TraceCheckUtils]: 3: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,821 INFO L290 TraceCheckUtils]: 4: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:04,822 INFO L290 TraceCheckUtils]: 5: Hoare triple {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:04,822 INFO L290 TraceCheckUtils]: 6: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:04,822 INFO L290 TraceCheckUtils]: 7: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21342#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:25:04,823 INFO L290 TraceCheckUtils]: 8: Hoare triple {21342#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21343#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:25:04,823 INFO L290 TraceCheckUtils]: 9: Hoare triple {21343#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:04,824 INFO L290 TraceCheckUtils]: 10: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:04,824 INFO L290 TraceCheckUtils]: 11: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:04,824 INFO L290 TraceCheckUtils]: 12: Hoare triple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:04,825 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {21327#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:04,826 INFO L272 TraceCheckUtils]: 0: Hoare triple {21292#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21331#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:04,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {21331#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {21292#true} is VALID [2022-04-27 22:25:04,826 INFO L290 TraceCheckUtils]: 2: Hoare triple {21292#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:04,826 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21292#true} {21292#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:04,826 INFO L272 TraceCheckUtils]: 4: Hoare triple {21292#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:04,826 INFO L290 TraceCheckUtils]: 5: Hoare triple {21292#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:04,826 INFO L290 TraceCheckUtils]: 6: Hoare triple {21292#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:04,826 INFO L272 TraceCheckUtils]: 7: Hoare triple {21292#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:04,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {21292#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,827 INFO L290 TraceCheckUtils]: 10: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,828 INFO L290 TraceCheckUtils]: 11: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:04,828 INFO L290 TraceCheckUtils]: 12: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:04,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:04,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:04,829 INFO L290 TraceCheckUtils]: 15: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:04,830 INFO L290 TraceCheckUtils]: 16: Hoare triple {21335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21336#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:25:04,830 INFO L290 TraceCheckUtils]: 17: Hoare triple {21336#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:04,830 INFO L290 TraceCheckUtils]: 18: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:04,831 INFO L290 TraceCheckUtils]: 19: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:04,831 INFO L290 TraceCheckUtils]: 20: Hoare triple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:04,832 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {21292#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {21311#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:25:04,832 INFO L290 TraceCheckUtils]: 22: Hoare triple {21311#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:25:04,832 INFO L272 TraceCheckUtils]: 23: Hoare triple {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:04,832 INFO L290 TraceCheckUtils]: 24: Hoare triple {21292#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,833 INFO L290 TraceCheckUtils]: 25: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,833 INFO L290 TraceCheckUtils]: 26: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,833 INFO L290 TraceCheckUtils]: 27: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:04,834 INFO L290 TraceCheckUtils]: 28: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:04,834 INFO L290 TraceCheckUtils]: 29: Hoare triple {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:04,835 INFO L290 TraceCheckUtils]: 30: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:04,835 INFO L290 TraceCheckUtils]: 31: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21342#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:25:04,835 INFO L290 TraceCheckUtils]: 32: Hoare triple {21342#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21343#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:25:04,836 INFO L290 TraceCheckUtils]: 33: Hoare triple {21343#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:04,836 INFO L290 TraceCheckUtils]: 34: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:04,836 INFO L290 TraceCheckUtils]: 35: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:04,837 INFO L290 TraceCheckUtils]: 36: Hoare triple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:04,838 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {21327#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:04,838 INFO L290 TraceCheckUtils]: 38: Hoare triple {21327#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {21328#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:04,839 INFO L272 TraceCheckUtils]: 39: Hoare triple {21328#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {21329#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:25:04,839 INFO L290 TraceCheckUtils]: 40: Hoare triple {21329#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {21330#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:25:04,839 INFO L290 TraceCheckUtils]: 41: Hoare triple {21330#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {21293#false} is VALID [2022-04-27 22:25:04,839 INFO L290 TraceCheckUtils]: 42: Hoare triple {21293#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21293#false} is VALID [2022-04-27 22:25:04,840 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:25:04,840 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:04,840 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1623422046] [2022-04-27 22:25:04,840 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1623422046] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:04,840 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1218214582] [2022-04-27 22:25:04,840 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:25:04,840 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:04,840 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:04,856 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:04,930 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-27 22:25:04,987 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-27 22:25:04,987 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:04,988 INFO L263 TraceCheckSpWp]: Trace formula consists of 208 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-27 22:25:04,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:04,997 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:05,675 INFO L272 TraceCheckUtils]: 0: Hoare triple {21292#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L290 TraceCheckUtils]: 1: Hoare triple {21292#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L290 TraceCheckUtils]: 2: Hoare triple {21292#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21292#true} {21292#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L272 TraceCheckUtils]: 4: Hoare triple {21292#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L290 TraceCheckUtils]: 5: Hoare triple {21292#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L290 TraceCheckUtils]: 6: Hoare triple {21292#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L272 TraceCheckUtils]: 7: Hoare triple {21292#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:05,676 INFO L290 TraceCheckUtils]: 8: Hoare triple {21292#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:05,677 INFO L290 TraceCheckUtils]: 9: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:05,677 INFO L290 TraceCheckUtils]: 10: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:05,678 INFO L290 TraceCheckUtils]: 11: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:05,678 INFO L290 TraceCheckUtils]: 12: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:05,679 INFO L290 TraceCheckUtils]: 13: Hoare triple {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:05,679 INFO L290 TraceCheckUtils]: 14: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:05,679 INFO L290 TraceCheckUtils]: 15: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21394#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:25:05,680 INFO L290 TraceCheckUtils]: 16: Hoare triple {21394#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21398#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} is VALID [2022-04-27 22:25:05,680 INFO L290 TraceCheckUtils]: 17: Hoare triple {21398#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:05,681 INFO L290 TraceCheckUtils]: 18: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:05,681 INFO L290 TraceCheckUtils]: 19: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:05,681 INFO L290 TraceCheckUtils]: 20: Hoare triple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:05,682 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {21292#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {21311#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:25:05,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {21311#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:25:05,683 INFO L272 TraceCheckUtils]: 23: Hoare triple {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:05,683 INFO L290 TraceCheckUtils]: 24: Hoare triple {21292#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:05,683 INFO L290 TraceCheckUtils]: 25: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:05,684 INFO L290 TraceCheckUtils]: 26: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:05,684 INFO L290 TraceCheckUtils]: 27: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:05,685 INFO L290 TraceCheckUtils]: 28: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:05,685 INFO L290 TraceCheckUtils]: 29: Hoare triple {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:05,686 INFO L290 TraceCheckUtils]: 30: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:05,686 INFO L290 TraceCheckUtils]: 31: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21444#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:05,686 INFO L290 TraceCheckUtils]: 32: Hoare triple {21444#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21448#(and (<= student_version_~j~1 2) (= student_version_~j~1 student_version_~y~1) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:05,687 INFO L290 TraceCheckUtils]: 33: Hoare triple {21448#(and (<= student_version_~j~1 2) (= student_version_~j~1 student_version_~y~1) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:05,687 INFO L290 TraceCheckUtils]: 34: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:05,688 INFO L290 TraceCheckUtils]: 35: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:05,688 INFO L290 TraceCheckUtils]: 36: Hoare triple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:05,689 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {21464#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0) (<= |main_#t~ret9| 4) (<= 4 |main_#t~ret9|))} is VALID [2022-04-27 22:25:05,689 INFO L290 TraceCheckUtils]: 38: Hoare triple {21464#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0) (<= |main_#t~ret9| 4) (<= 4 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {21468#(and (<= main_~n_stones1~0 4) (<= main_~n_stones2~0 4) (<= 4 main_~n_stones1~0) (<= 4 main_~n_stones2~0))} is VALID [2022-04-27 22:25:05,690 INFO L272 TraceCheckUtils]: 39: Hoare triple {21468#(and (<= main_~n_stones1~0 4) (<= main_~n_stones2~0 4) (<= 4 main_~n_stones1~0) (<= 4 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {21472#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:05,690 INFO L290 TraceCheckUtils]: 40: Hoare triple {21472#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {21476#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:05,691 INFO L290 TraceCheckUtils]: 41: Hoare triple {21476#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {21293#false} is VALID [2022-04-27 22:25:05,691 INFO L290 TraceCheckUtils]: 42: Hoare triple {21293#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21293#false} is VALID [2022-04-27 22:25:05,691 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:25:05,691 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:06,129 INFO L290 TraceCheckUtils]: 42: Hoare triple {21293#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21293#false} is VALID [2022-04-27 22:25:06,131 INFO L290 TraceCheckUtils]: 41: Hoare triple {21476#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {21293#false} is VALID [2022-04-27 22:25:06,131 INFO L290 TraceCheckUtils]: 40: Hoare triple {21472#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {21476#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:06,132 INFO L272 TraceCheckUtils]: 39: Hoare triple {21328#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {21472#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:06,132 INFO L290 TraceCheckUtils]: 38: Hoare triple {21327#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {21328#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:06,133 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {21327#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:06,133 INFO L290 TraceCheckUtils]: 36: Hoare triple {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:06,134 INFO L290 TraceCheckUtils]: 35: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {21345#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:25:06,134 INFO L290 TraceCheckUtils]: 34: Hoare triple {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:06,135 INFO L290 TraceCheckUtils]: 33: Hoare triple {21343#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21344#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:25:06,135 INFO L290 TraceCheckUtils]: 32: Hoare triple {21342#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21343#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:25:06,136 INFO L290 TraceCheckUtils]: 31: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {21342#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:25:06,136 INFO L290 TraceCheckUtils]: 30: Hoare triple {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:06,136 INFO L290 TraceCheckUtils]: 29: Hoare triple {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:06,137 INFO L290 TraceCheckUtils]: 28: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {21340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:06,137 INFO L290 TraceCheckUtils]: 27: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:06,138 INFO L290 TraceCheckUtils]: 26: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:06,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:06,138 INFO L290 TraceCheckUtils]: 24: Hoare triple {21292#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {21339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:06,138 INFO L272 TraceCheckUtils]: 23: Hoare triple {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:06,139 INFO L290 TraceCheckUtils]: 22: Hoare triple {21311#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {21312#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:25:06,140 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {21292#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {21311#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:25:06,140 INFO L290 TraceCheckUtils]: 20: Hoare triple {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:06,140 INFO L290 TraceCheckUtils]: 19: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {21338#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:25:06,141 INFO L290 TraceCheckUtils]: 18: Hoare triple {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:06,141 INFO L290 TraceCheckUtils]: 17: Hoare triple {21336#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21337#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:25:06,142 INFO L290 TraceCheckUtils]: 16: Hoare triple {21335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21336#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:25:06,142 INFO L290 TraceCheckUtils]: 15: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {21335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:06,142 INFO L290 TraceCheckUtils]: 14: Hoare triple {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:06,143 INFO L290 TraceCheckUtils]: 13: Hoare triple {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21334#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:06,143 INFO L290 TraceCheckUtils]: 12: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {21333#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:06,144 INFO L290 TraceCheckUtils]: 11: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:06,144 INFO L290 TraceCheckUtils]: 10: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:06,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:06,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {21292#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {21332#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:06,145 INFO L272 TraceCheckUtils]: 7: Hoare triple {21292#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:06,145 INFO L290 TraceCheckUtils]: 6: Hoare triple {21292#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:06,145 INFO L290 TraceCheckUtils]: 5: Hoare triple {21292#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {21292#true} is VALID [2022-04-27 22:25:06,145 INFO L272 TraceCheckUtils]: 4: Hoare triple {21292#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:06,145 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21292#true} {21292#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:06,145 INFO L290 TraceCheckUtils]: 2: Hoare triple {21292#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:06,145 INFO L290 TraceCheckUtils]: 1: Hoare triple {21292#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {21292#true} is VALID [2022-04-27 22:25:06,145 INFO L272 TraceCheckUtils]: 0: Hoare triple {21292#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {21292#true} is VALID [2022-04-27 22:25:06,146 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:25:06,146 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1218214582] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:06,146 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:06,146 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 22, 22] total 31 [2022-04-27 22:25:06,146 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1326146285] [2022-04-27 22:25:06,146 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:06,146 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 43 [2022-04-27 22:25:06,147 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:06,147 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:06,183 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-27 22:25:06,183 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-04-27 22:25:06,183 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:06,183 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-04-27 22:25:06,183 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=857, Unknown=0, NotChecked=0, Total=930 [2022-04-27 22:25:06,183 INFO L87 Difference]: Start difference. First operand 210 states and 249 transitions. Second operand has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:09,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:09,386 INFO L93 Difference]: Finished difference Result 228 states and 271 transitions. [2022-04-27 22:25:09,386 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-27 22:25:09,387 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 43 [2022-04-27 22:25:09,387 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:09,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:09,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 96 transitions. [2022-04-27 22:25:09,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:09,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 96 transitions. [2022-04-27 22:25:09,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 96 transitions. [2022-04-27 22:25:09,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:09,495 INFO L225 Difference]: With dead ends: 228 [2022-04-27 22:25:09,496 INFO L226 Difference]: Without dead ends: 213 [2022-04-27 22:25:09,498 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 74 SyntacticMatches, 9 SemanticMatches, 50 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 417 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=195, Invalid=2457, Unknown=0, NotChecked=0, Total=2652 [2022-04-27 22:25:09,498 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 77 mSDsluCounter, 122 mSDsCounter, 0 mSdLazyCounter, 1474 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 78 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 1502 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 1474 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:09,498 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [78 Valid, 163 Invalid, 1502 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 1474 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-27 22:25:09,499 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 213 states. [2022-04-27 22:25:09,990 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 213 to 208. [2022-04-27 22:25:09,990 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:09,991 INFO L82 GeneralOperation]: Start isEquivalent. First operand 213 states. Second operand has 208 states, 172 states have (on average 1.2093023255813953) internal successors, (208), 190 states have internal predecessors, (208), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:09,991 INFO L74 IsIncluded]: Start isIncluded. First operand 213 states. Second operand has 208 states, 172 states have (on average 1.2093023255813953) internal successors, (208), 190 states have internal predecessors, (208), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:09,991 INFO L87 Difference]: Start difference. First operand 213 states. Second operand has 208 states, 172 states have (on average 1.2093023255813953) internal successors, (208), 190 states have internal predecessors, (208), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:09,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:09,994 INFO L93 Difference]: Finished difference Result 213 states and 253 transitions. [2022-04-27 22:25:09,994 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 253 transitions. [2022-04-27 22:25:09,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:09,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:09,995 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 172 states have (on average 1.2093023255813953) internal successors, (208), 190 states have internal predecessors, (208), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) Second operand 213 states. [2022-04-27 22:25:09,995 INFO L87 Difference]: Start difference. First operand has 208 states, 172 states have (on average 1.2093023255813953) internal successors, (208), 190 states have internal predecessors, (208), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) Second operand 213 states. [2022-04-27 22:25:09,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:09,999 INFO L93 Difference]: Finished difference Result 213 states and 253 transitions. [2022-04-27 22:25:09,999 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 253 transitions. [2022-04-27 22:25:10,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:10,000 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:10,000 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:10,000 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:10,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 172 states have (on average 1.2093023255813953) internal successors, (208), 190 states have internal predecessors, (208), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2022-04-27 22:25:10,004 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 248 transitions. [2022-04-27 22:25:10,004 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 248 transitions. Word has length 43 [2022-04-27 22:25:10,004 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:10,004 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 248 transitions. [2022-04-27 22:25:10,004 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 28 states have (on average 1.5357142857142858) internal successors, (43), 25 states have internal predecessors, (43), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:10,004 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 248 transitions. [2022-04-27 22:25:10,006 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 22:25:10,006 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:10,006 INFO L195 NwaCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:10,023 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Ended with exit code 0 [2022-04-27 22:25:10,206 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:10,206 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:10,207 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:10,207 INFO L85 PathProgramCache]: Analyzing trace with hash 1032734298, now seen corresponding path program 22 times [2022-04-27 22:25:10,207 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:10,207 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [208262412] [2022-04-27 22:25:10,207 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:10,207 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:10,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:10,238 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:10,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:10,241 INFO L290 TraceCheckUtils]: 0: Hoare triple {22719#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {22685#true} is VALID [2022-04-27 22:25:10,241 INFO L290 TraceCheckUtils]: 1: Hoare triple {22685#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:10,241 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {22685#true} {22685#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:10,241 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:10,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:10,324 INFO L290 TraceCheckUtils]: 0: Hoare triple {22685#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {22720#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:10,325 INFO L290 TraceCheckUtils]: 1: Hoare triple {22720#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22721#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:10,325 INFO L290 TraceCheckUtils]: 2: Hoare triple {22721#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22722#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:10,326 INFO L290 TraceCheckUtils]: 3: Hoare triple {22722#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22723#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) correct_version_~n))} is VALID [2022-04-27 22:25:10,326 INFO L290 TraceCheckUtils]: 4: Hoare triple {22723#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {22724#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:25:10,327 INFO L290 TraceCheckUtils]: 5: Hoare triple {22724#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) |correct_version_#in~n|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,327 INFO L290 TraceCheckUtils]: 6: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,327 INFO L290 TraceCheckUtils]: 7: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,328 INFO L290 TraceCheckUtils]: 8: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,328 INFO L290 TraceCheckUtils]: 9: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,329 INFO L290 TraceCheckUtils]: 10: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,329 INFO L290 TraceCheckUtils]: 11: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,329 INFO L290 TraceCheckUtils]: 12: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,330 INFO L290 TraceCheckUtils]: 13: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,331 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {22685#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} is VALID [2022-04-27 22:25:10,331 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:25:10,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:10,421 INFO L290 TraceCheckUtils]: 0: Hoare triple {22685#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {22726#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:10,421 INFO L290 TraceCheckUtils]: 1: Hoare triple {22726#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22727#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:10,422 INFO L290 TraceCheckUtils]: 2: Hoare triple {22727#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22728#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:10,422 INFO L290 TraceCheckUtils]: 3: Hoare triple {22728#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {22729#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 2 student_version_~a)))} is VALID [2022-04-27 22:25:10,423 INFO L290 TraceCheckUtils]: 4: Hoare triple {22729#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,423 INFO L290 TraceCheckUtils]: 5: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,423 INFO L290 TraceCheckUtils]: 6: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,424 INFO L290 TraceCheckUtils]: 7: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,424 INFO L290 TraceCheckUtils]: 8: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,424 INFO L290 TraceCheckUtils]: 9: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,425 INFO L290 TraceCheckUtils]: 10: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,425 INFO L290 TraceCheckUtils]: 11: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,426 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {22686#false} is VALID [2022-04-27 22:25:10,426 INFO L272 TraceCheckUtils]: 0: Hoare triple {22685#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22719#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:10,426 INFO L290 TraceCheckUtils]: 1: Hoare triple {22719#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {22685#true} is VALID [2022-04-27 22:25:10,426 INFO L290 TraceCheckUtils]: 2: Hoare triple {22685#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:10,426 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22685#true} {22685#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:10,426 INFO L272 TraceCheckUtils]: 4: Hoare triple {22685#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:10,426 INFO L290 TraceCheckUtils]: 5: Hoare triple {22685#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:10,427 INFO L290 TraceCheckUtils]: 6: Hoare triple {22685#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:10,427 INFO L272 TraceCheckUtils]: 7: Hoare triple {22685#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:10,427 INFO L290 TraceCheckUtils]: 8: Hoare triple {22685#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {22720#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:10,428 INFO L290 TraceCheckUtils]: 9: Hoare triple {22720#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22721#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:10,428 INFO L290 TraceCheckUtils]: 10: Hoare triple {22721#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22722#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:10,429 INFO L290 TraceCheckUtils]: 11: Hoare triple {22722#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22723#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) correct_version_~n))} is VALID [2022-04-27 22:25:10,429 INFO L290 TraceCheckUtils]: 12: Hoare triple {22723#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {22724#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:25:10,429 INFO L290 TraceCheckUtils]: 13: Hoare triple {22724#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 2 correct_version_~a) 1) |correct_version_#in~n|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,430 INFO L290 TraceCheckUtils]: 14: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,430 INFO L290 TraceCheckUtils]: 15: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,430 INFO L290 TraceCheckUtils]: 16: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,431 INFO L290 TraceCheckUtils]: 17: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,431 INFO L290 TraceCheckUtils]: 18: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,432 INFO L290 TraceCheckUtils]: 19: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,432 INFO L290 TraceCheckUtils]: 20: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,432 INFO L290 TraceCheckUtils]: 21: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:10,433 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {22685#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} is VALID [2022-04-27 22:25:10,433 INFO L290 TraceCheckUtils]: 23: Hoare triple {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} is VALID [2022-04-27 22:25:10,433 INFO L272 TraceCheckUtils]: 24: Hoare triple {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:10,434 INFO L290 TraceCheckUtils]: 25: Hoare triple {22685#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {22726#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:10,434 INFO L290 TraceCheckUtils]: 26: Hoare triple {22726#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22727#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:10,435 INFO L290 TraceCheckUtils]: 27: Hoare triple {22727#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22728#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:10,435 INFO L290 TraceCheckUtils]: 28: Hoare triple {22728#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {22729#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 2 student_version_~a)))} is VALID [2022-04-27 22:25:10,436 INFO L290 TraceCheckUtils]: 29: Hoare triple {22729#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,436 INFO L290 TraceCheckUtils]: 30: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,436 INFO L290 TraceCheckUtils]: 31: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,436 INFO L290 TraceCheckUtils]: 32: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,437 INFO L290 TraceCheckUtils]: 33: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,437 INFO L290 TraceCheckUtils]: 34: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,438 INFO L290 TraceCheckUtils]: 36: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:10,438 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {22686#false} is VALID [2022-04-27 22:25:10,438 INFO L290 TraceCheckUtils]: 38: Hoare triple {22686#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {22686#false} is VALID [2022-04-27 22:25:10,439 INFO L272 TraceCheckUtils]: 39: Hoare triple {22686#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {22686#false} is VALID [2022-04-27 22:25:10,439 INFO L290 TraceCheckUtils]: 40: Hoare triple {22686#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {22686#false} is VALID [2022-04-27 22:25:10,439 INFO L290 TraceCheckUtils]: 41: Hoare triple {22686#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {22686#false} is VALID [2022-04-27 22:25:10,439 INFO L290 TraceCheckUtils]: 42: Hoare triple {22686#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22686#false} is VALID [2022-04-27 22:25:10,439 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2022-04-27 22:25:10,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:10,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [208262412] [2022-04-27 22:25:10,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [208262412] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:10,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [893497751] [2022-04-27 22:25:10,440 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:25:10,440 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:10,440 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:10,441 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:10,443 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-27 22:25:10,492 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:25:10,492 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:10,493 INFO L263 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-27 22:25:10,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:10,504 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:11,213 INFO L272 TraceCheckUtils]: 0: Hoare triple {22685#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {22685#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {22685#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22685#true} {22685#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L272 TraceCheckUtils]: 4: Hoare triple {22685#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {22685#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L290 TraceCheckUtils]: 6: Hoare triple {22685#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L272 TraceCheckUtils]: 7: Hoare triple {22685#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:11,214 INFO L290 TraceCheckUtils]: 8: Hoare triple {22685#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {22758#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:11,215 INFO L290 TraceCheckUtils]: 9: Hoare triple {22758#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22762#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:11,216 INFO L290 TraceCheckUtils]: 10: Hoare triple {22762#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22766#(and (<= |correct_version_#in~a| (div correct_version_~b~0 2)) (<= correct_version_~n |correct_version_#in~n|))} is VALID [2022-04-27 22:25:11,216 INFO L290 TraceCheckUtils]: 11: Hoare triple {22766#(and (<= |correct_version_#in~a| (div correct_version_~b~0 2)) (<= correct_version_~n |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,217 INFO L290 TraceCheckUtils]: 12: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,217 INFO L290 TraceCheckUtils]: 13: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,218 INFO L290 TraceCheckUtils]: 15: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,218 INFO L290 TraceCheckUtils]: 16: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,218 INFO L290 TraceCheckUtils]: 17: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,219 INFO L290 TraceCheckUtils]: 18: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,219 INFO L290 TraceCheckUtils]: 19: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,219 INFO L290 TraceCheckUtils]: 20: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,220 INFO L290 TraceCheckUtils]: 21: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:11,220 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {22685#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} is VALID [2022-04-27 22:25:11,221 INFO L290 TraceCheckUtils]: 23: Hoare triple {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} is VALID [2022-04-27 22:25:11,221 INFO L272 TraceCheckUtils]: 24: Hoare triple {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:11,221 INFO L290 TraceCheckUtils]: 25: Hoare triple {22685#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {22812#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:25:11,222 INFO L290 TraceCheckUtils]: 26: Hoare triple {22812#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22816#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} is VALID [2022-04-27 22:25:11,223 INFO L290 TraceCheckUtils]: 27: Hoare triple {22816#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22820#(and (<= (div (- student_version_~b~1) (- 2)) |student_version_#in~a|) (<= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:25:11,223 INFO L290 TraceCheckUtils]: 28: Hoare triple {22820#(and (<= (div (- student_version_~b~1) (- 2)) |student_version_#in~a|) (<= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,224 INFO L290 TraceCheckUtils]: 30: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,224 INFO L290 TraceCheckUtils]: 31: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,224 INFO L290 TraceCheckUtils]: 32: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,225 INFO L290 TraceCheckUtils]: 33: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,225 INFO L290 TraceCheckUtils]: 34: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,225 INFO L290 TraceCheckUtils]: 35: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,225 INFO L290 TraceCheckUtils]: 36: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:11,226 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {22686#false} is VALID [2022-04-27 22:25:11,226 INFO L290 TraceCheckUtils]: 38: Hoare triple {22686#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {22686#false} is VALID [2022-04-27 22:25:11,226 INFO L272 TraceCheckUtils]: 39: Hoare triple {22686#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {22686#false} is VALID [2022-04-27 22:25:11,226 INFO L290 TraceCheckUtils]: 40: Hoare triple {22686#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {22686#false} is VALID [2022-04-27 22:25:11,227 INFO L290 TraceCheckUtils]: 41: Hoare triple {22686#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {22686#false} is VALID [2022-04-27 22:25:11,227 INFO L290 TraceCheckUtils]: 42: Hoare triple {22686#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22686#false} is VALID [2022-04-27 22:25:11,227 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 22:25:11,227 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:12,203 INFO L290 TraceCheckUtils]: 42: Hoare triple {22686#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22686#false} is VALID [2022-04-27 22:25:12,203 INFO L290 TraceCheckUtils]: 41: Hoare triple {22686#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {22686#false} is VALID [2022-04-27 22:25:12,203 INFO L290 TraceCheckUtils]: 40: Hoare triple {22686#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {22686#false} is VALID [2022-04-27 22:25:12,203 INFO L272 TraceCheckUtils]: 39: Hoare triple {22686#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {22686#false} is VALID [2022-04-27 22:25:12,204 INFO L290 TraceCheckUtils]: 38: Hoare triple {22686#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {22686#false} is VALID [2022-04-27 22:25:12,204 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {22686#false} is VALID [2022-04-27 22:25:12,205 INFO L290 TraceCheckUtils]: 36: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,205 INFO L290 TraceCheckUtils]: 35: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,205 INFO L290 TraceCheckUtils]: 34: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,206 INFO L290 TraceCheckUtils]: 33: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,206 INFO L290 TraceCheckUtils]: 32: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,206 INFO L290 TraceCheckUtils]: 31: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,206 INFO L290 TraceCheckUtils]: 30: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,207 INFO L290 TraceCheckUtils]: 29: Hoare triple {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,207 INFO L290 TraceCheckUtils]: 28: Hoare triple {22911#(or (<= |student_version_#in~n| (* |student_version_#in~a| 2)) (< student_version_~b~1 student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {22730#(<= |student_version_#in~n| (* |student_version_#in~a| 2))} is VALID [2022-04-27 22:25:12,208 INFO L290 TraceCheckUtils]: 27: Hoare triple {22915#(or (<= |student_version_#in~n| (* |student_version_#in~a| 2)) (< (+ student_version_~b~1 student_version_~a) student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22911#(or (<= |student_version_#in~n| (* |student_version_#in~a| 2)) (< student_version_~b~1 student_version_~n))} is VALID [2022-04-27 22:25:12,208 INFO L290 TraceCheckUtils]: 26: Hoare triple {22919#(or (<= |student_version_#in~n| (* |student_version_#in~a| 2)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {22915#(or (<= |student_version_#in~n| (* |student_version_#in~a| 2)) (< (+ student_version_~b~1 student_version_~a) student_version_~n))} is VALID [2022-04-27 22:25:12,209 INFO L290 TraceCheckUtils]: 25: Hoare triple {22685#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {22919#(or (<= |student_version_#in~n| (* |student_version_#in~a| 2)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} is VALID [2022-04-27 22:25:12,209 INFO L272 TraceCheckUtils]: 24: Hoare triple {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:12,209 INFO L290 TraceCheckUtils]: 23: Hoare triple {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} is VALID [2022-04-27 22:25:12,210 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {22685#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {22705#(<= (+ (* main_~a~0 2) 1) main_~n~0)} is VALID [2022-04-27 22:25:12,210 INFO L290 TraceCheckUtils]: 21: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,211 INFO L290 TraceCheckUtils]: 20: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,211 INFO L290 TraceCheckUtils]: 19: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,211 INFO L290 TraceCheckUtils]: 18: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,212 INFO L290 TraceCheckUtils]: 17: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,212 INFO L290 TraceCheckUtils]: 16: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,212 INFO L290 TraceCheckUtils]: 15: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,213 INFO L290 TraceCheckUtils]: 14: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,213 INFO L290 TraceCheckUtils]: 13: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,214 INFO L290 TraceCheckUtils]: 12: Hoare triple {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,214 INFO L290 TraceCheckUtils]: 11: Hoare triple {22965#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22725#(<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:25:12,215 INFO L290 TraceCheckUtils]: 10: Hoare triple {22969#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22965#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:25:12,215 INFO L290 TraceCheckUtils]: 9: Hoare triple {22973#(or (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {22969#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:25:12,216 INFO L290 TraceCheckUtils]: 8: Hoare triple {22685#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {22973#(or (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)) (<= (+ (* 2 |correct_version_#in~a|) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:25:12,216 INFO L272 TraceCheckUtils]: 7: Hoare triple {22685#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L290 TraceCheckUtils]: 6: Hoare triple {22685#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L290 TraceCheckUtils]: 5: Hoare triple {22685#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L272 TraceCheckUtils]: 4: Hoare triple {22685#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22685#true} {22685#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {22685#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {22685#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {22685#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22685#true} is VALID [2022-04-27 22:25:12,216 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 22:25:12,217 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [893497751] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:12,217 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:12,217 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 11, 11] total 27 [2022-04-27 22:25:12,217 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [258057661] [2022-04-27 22:25:12,217 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:12,217 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 43 [2022-04-27 22:25:12,218 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:12,218 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:12,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:12,260 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-04-27 22:25:12,260 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:12,260 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-04-27 22:25:12,260 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=88, Invalid=614, Unknown=0, NotChecked=0, Total=702 [2022-04-27 22:25:12,260 INFO L87 Difference]: Start difference. First operand 208 states and 248 transitions. Second operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:14,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:14,507 INFO L93 Difference]: Finished difference Result 222 states and 261 transitions. [2022-04-27 22:25:14,508 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 22:25:14,508 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 43 [2022-04-27 22:25:14,508 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:14,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:14,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-27 22:25:14,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:14,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-27 22:25:14,509 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 89 transitions. [2022-04-27 22:25:14,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:14,560 INFO L225 Difference]: With dead ends: 222 [2022-04-27 22:25:14,560 INFO L226 Difference]: Without dead ends: 202 [2022-04-27 22:25:14,561 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 72 SyntacticMatches, 6 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 180 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=185, Invalid=1297, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:25:14,562 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 186 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 901 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 191 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 924 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 901 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:14,562 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [191 Valid, 122 Invalid, 924 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 901 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 22:25:14,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 202 states. [2022-04-27 22:25:14,958 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 202 to 200. [2022-04-27 22:25:14,958 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:14,958 INFO L82 GeneralOperation]: Start isEquivalent. First operand 202 states. Second operand has 200 states, 164 states have (on average 1.2073170731707317) internal successors, (198), 182 states have internal predecessors, (198), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (24), 12 states have call predecessors, (24), 12 states have call successors, (24) [2022-04-27 22:25:14,958 INFO L74 IsIncluded]: Start isIncluded. First operand 202 states. Second operand has 200 states, 164 states have (on average 1.2073170731707317) internal successors, (198), 182 states have internal predecessors, (198), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (24), 12 states have call predecessors, (24), 12 states have call successors, (24) [2022-04-27 22:25:14,959 INFO L87 Difference]: Start difference. First operand 202 states. Second operand has 200 states, 164 states have (on average 1.2073170731707317) internal successors, (198), 182 states have internal predecessors, (198), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (24), 12 states have call predecessors, (24), 12 states have call successors, (24) [2022-04-27 22:25:14,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:14,961 INFO L93 Difference]: Finished difference Result 202 states and 238 transitions. [2022-04-27 22:25:14,961 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 238 transitions. [2022-04-27 22:25:14,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:14,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:14,962 INFO L74 IsIncluded]: Start isIncluded. First operand has 200 states, 164 states have (on average 1.2073170731707317) internal successors, (198), 182 states have internal predecessors, (198), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (24), 12 states have call predecessors, (24), 12 states have call successors, (24) Second operand 202 states. [2022-04-27 22:25:14,962 INFO L87 Difference]: Start difference. First operand has 200 states, 164 states have (on average 1.2073170731707317) internal successors, (198), 182 states have internal predecessors, (198), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (24), 12 states have call predecessors, (24), 12 states have call successors, (24) Second operand 202 states. [2022-04-27 22:25:14,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:14,965 INFO L93 Difference]: Finished difference Result 202 states and 238 transitions. [2022-04-27 22:25:14,965 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 238 transitions. [2022-04-27 22:25:14,966 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:14,966 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:14,966 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:14,966 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:14,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 200 states, 164 states have (on average 1.2073170731707317) internal successors, (198), 182 states have internal predecessors, (198), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (24), 12 states have call predecessors, (24), 12 states have call successors, (24) [2022-04-27 22:25:14,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 200 states to 200 states and 236 transitions. [2022-04-27 22:25:14,969 INFO L78 Accepts]: Start accepts. Automaton has 200 states and 236 transitions. Word has length 43 [2022-04-27 22:25:14,969 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:14,969 INFO L495 AbstractCegarLoop]: Abstraction has 200 states and 236 transitions. [2022-04-27 22:25:14,969 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:14,969 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 236 transitions. [2022-04-27 22:25:14,970 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 22:25:14,970 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:14,970 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:14,989 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:15,187 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:15,187 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:15,188 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:15,188 INFO L85 PathProgramCache]: Analyzing trace with hash 1311233203, now seen corresponding path program 23 times [2022-04-27 22:25:15,188 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:15,188 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1775339237] [2022-04-27 22:25:15,188 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:15,188 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:15,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:15,242 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:15,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:15,252 INFO L290 TraceCheckUtils]: 0: Hoare triple {24044#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {24009#true} is VALID [2022-04-27 22:25:15,252 INFO L290 TraceCheckUtils]: 1: Hoare triple {24009#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:15,252 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {24009#true} {24009#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:15,252 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:15,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:15,323 INFO L290 TraceCheckUtils]: 0: Hoare triple {24009#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:15,324 INFO L290 TraceCheckUtils]: 1: Hoare triple {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:15,324 INFO L290 TraceCheckUtils]: 2: Hoare triple {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:15,325 INFO L290 TraceCheckUtils]: 3: Hoare triple {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24046#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:25:15,325 INFO L290 TraceCheckUtils]: 4: Hoare triple {24046#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24047#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:15,325 INFO L290 TraceCheckUtils]: 5: Hoare triple {24047#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24048#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:15,326 INFO L290 TraceCheckUtils]: 6: Hoare triple {24048#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24049#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:15,326 INFO L290 TraceCheckUtils]: 7: Hoare triple {24049#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* |correct_version_#in~a| 4)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,326 INFO L290 TraceCheckUtils]: 8: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,327 INFO L290 TraceCheckUtils]: 9: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,327 INFO L290 TraceCheckUtils]: 10: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,327 INFO L290 TraceCheckUtils]: 11: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,327 INFO L290 TraceCheckUtils]: 12: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,328 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} {24009#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {24028#(<= main_~m~0 (* main_~a~0 4))} is VALID [2022-04-27 22:25:15,328 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 22:25:15,332 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:15,453 INFO L290 TraceCheckUtils]: 0: Hoare triple {24009#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,455 INFO L290 TraceCheckUtils]: 3: Hoare triple {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24052#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:25:15,455 INFO L290 TraceCheckUtils]: 4: Hoare triple {24052#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24053#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,456 INFO L290 TraceCheckUtils]: 5: Hoare triple {24053#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24054#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,456 INFO L290 TraceCheckUtils]: 6: Hoare triple {24054#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24055#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:25:15,457 INFO L290 TraceCheckUtils]: 7: Hoare triple {24055#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24056#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 4) 1) student_version_~m))} is VALID [2022-04-27 22:25:15,457 INFO L290 TraceCheckUtils]: 8: Hoare triple {24056#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 4) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,457 INFO L290 TraceCheckUtils]: 9: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,458 INFO L290 TraceCheckUtils]: 10: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,458 INFO L290 TraceCheckUtils]: 11: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,458 INFO L290 TraceCheckUtils]: 12: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,458 INFO L290 TraceCheckUtils]: 13: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,459 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} {24028#(<= main_~m~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {24010#false} is VALID [2022-04-27 22:25:15,459 INFO L272 TraceCheckUtils]: 0: Hoare triple {24009#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24044#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:15,460 INFO L290 TraceCheckUtils]: 1: Hoare triple {24044#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {24009#true} is VALID [2022-04-27 22:25:15,460 INFO L290 TraceCheckUtils]: 2: Hoare triple {24009#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:15,460 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24009#true} {24009#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:15,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {24009#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:15,460 INFO L290 TraceCheckUtils]: 5: Hoare triple {24009#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:15,460 INFO L290 TraceCheckUtils]: 6: Hoare triple {24009#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:15,460 INFO L272 TraceCheckUtils]: 7: Hoare triple {24009#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:15,460 INFO L290 TraceCheckUtils]: 8: Hoare triple {24009#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:15,461 INFO L290 TraceCheckUtils]: 9: Hoare triple {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:15,461 INFO L290 TraceCheckUtils]: 10: Hoare triple {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:15,462 INFO L290 TraceCheckUtils]: 11: Hoare triple {24045#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24046#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:25:15,462 INFO L290 TraceCheckUtils]: 12: Hoare triple {24046#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24047#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:15,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {24047#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24048#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:15,463 INFO L290 TraceCheckUtils]: 14: Hoare triple {24048#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24049#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:15,463 INFO L290 TraceCheckUtils]: 15: Hoare triple {24049#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* |correct_version_#in~a| 4)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,464 INFO L290 TraceCheckUtils]: 16: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,464 INFO L290 TraceCheckUtils]: 17: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,464 INFO L290 TraceCheckUtils]: 18: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,464 INFO L290 TraceCheckUtils]: 19: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,465 INFO L290 TraceCheckUtils]: 20: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:15,465 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} {24009#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {24028#(<= main_~m~0 (* main_~a~0 4))} is VALID [2022-04-27 22:25:15,465 INFO L290 TraceCheckUtils]: 22: Hoare triple {24028#(<= main_~m~0 (* main_~a~0 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {24028#(<= main_~m~0 (* main_~a~0 4))} is VALID [2022-04-27 22:25:15,466 INFO L272 TraceCheckUtils]: 23: Hoare triple {24028#(<= main_~m~0 (* main_~a~0 4))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:15,466 INFO L290 TraceCheckUtils]: 24: Hoare triple {24009#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,466 INFO L290 TraceCheckUtils]: 25: Hoare triple {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,467 INFO L290 TraceCheckUtils]: 26: Hoare triple {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,467 INFO L290 TraceCheckUtils]: 27: Hoare triple {24051#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24052#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:25:15,467 INFO L290 TraceCheckUtils]: 28: Hoare triple {24052#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24053#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,468 INFO L290 TraceCheckUtils]: 29: Hoare triple {24053#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24054#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:15,468 INFO L290 TraceCheckUtils]: 30: Hoare triple {24054#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24055#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:25:15,469 INFO L290 TraceCheckUtils]: 31: Hoare triple {24055#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24056#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 4) 1) student_version_~m))} is VALID [2022-04-27 22:25:15,469 INFO L290 TraceCheckUtils]: 32: Hoare triple {24056#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 4) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,470 INFO L290 TraceCheckUtils]: 33: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,470 INFO L290 TraceCheckUtils]: 34: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,470 INFO L290 TraceCheckUtils]: 35: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,470 INFO L290 TraceCheckUtils]: 36: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,471 INFO L290 TraceCheckUtils]: 37: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:15,471 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} {24028#(<= main_~m~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {24010#false} is VALID [2022-04-27 22:25:15,471 INFO L290 TraceCheckUtils]: 39: Hoare triple {24010#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {24010#false} is VALID [2022-04-27 22:25:15,472 INFO L272 TraceCheckUtils]: 40: Hoare triple {24010#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {24010#false} is VALID [2022-04-27 22:25:15,472 INFO L290 TraceCheckUtils]: 41: Hoare triple {24010#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {24010#false} is VALID [2022-04-27 22:25:15,472 INFO L290 TraceCheckUtils]: 42: Hoare triple {24010#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {24010#false} is VALID [2022-04-27 22:25:15,472 INFO L290 TraceCheckUtils]: 43: Hoare triple {24010#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24010#false} is VALID [2022-04-27 22:25:15,472 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:15,472 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:15,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1775339237] [2022-04-27 22:25:15,472 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1775339237] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:15,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [437744946] [2022-04-27 22:25:15,473 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:25:15,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:15,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:15,476 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:15,477 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-27 22:25:15,547 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2022-04-27 22:25:15,547 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:15,548 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 22:25:15,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:15,566 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:16,300 INFO L272 TraceCheckUtils]: 0: Hoare triple {24009#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:16,300 INFO L290 TraceCheckUtils]: 1: Hoare triple {24009#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {24009#true} is VALID [2022-04-27 22:25:16,300 INFO L290 TraceCheckUtils]: 2: Hoare triple {24009#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:16,300 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24009#true} {24009#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:16,300 INFO L272 TraceCheckUtils]: 4: Hoare triple {24009#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:16,300 INFO L290 TraceCheckUtils]: 5: Hoare triple {24009#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:16,300 INFO L290 TraceCheckUtils]: 6: Hoare triple {24009#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:16,300 INFO L272 TraceCheckUtils]: 7: Hoare triple {24009#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:16,301 INFO L290 TraceCheckUtils]: 8: Hoare triple {24009#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {24085#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:16,301 INFO L290 TraceCheckUtils]: 9: Hoare triple {24085#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {24085#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:16,302 INFO L290 TraceCheckUtils]: 10: Hoare triple {24085#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {24085#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:16,302 INFO L290 TraceCheckUtils]: 11: Hoare triple {24085#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24095#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:16,303 INFO L290 TraceCheckUtils]: 12: Hoare triple {24095#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24099#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:16,303 INFO L290 TraceCheckUtils]: 13: Hoare triple {24099#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24103#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:16,304 INFO L290 TraceCheckUtils]: 14: Hoare triple {24103#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24107#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 4)) |correct_version_#in~a|))} is VALID [2022-04-27 22:25:16,304 INFO L290 TraceCheckUtils]: 15: Hoare triple {24107#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 4)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:16,305 INFO L290 TraceCheckUtils]: 16: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:16,305 INFO L290 TraceCheckUtils]: 17: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:16,305 INFO L290 TraceCheckUtils]: 18: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:16,306 INFO L290 TraceCheckUtils]: 19: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:16,306 INFO L290 TraceCheckUtils]: 20: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:16,307 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} {24009#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {24028#(<= main_~m~0 (* main_~a~0 4))} is VALID [2022-04-27 22:25:16,307 INFO L290 TraceCheckUtils]: 22: Hoare triple {24028#(<= main_~m~0 (* main_~a~0 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {24028#(<= main_~m~0 (* main_~a~0 4))} is VALID [2022-04-27 22:25:16,307 INFO L272 TraceCheckUtils]: 23: Hoare triple {24028#(<= main_~m~0 (* main_~a~0 4))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:16,307 INFO L290 TraceCheckUtils]: 24: Hoare triple {24009#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {24138#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:16,308 INFO L290 TraceCheckUtils]: 25: Hoare triple {24138#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {24138#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:16,308 INFO L290 TraceCheckUtils]: 26: Hoare triple {24138#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {24138#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:16,309 INFO L290 TraceCheckUtils]: 27: Hoare triple {24138#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24148#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:25:16,309 INFO L290 TraceCheckUtils]: 28: Hoare triple {24148#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24152#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:16,310 INFO L290 TraceCheckUtils]: 29: Hoare triple {24152#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24156#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:16,310 INFO L290 TraceCheckUtils]: 30: Hoare triple {24156#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24160#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 4)))} is VALID [2022-04-27 22:25:16,311 INFO L290 TraceCheckUtils]: 31: Hoare triple {24160#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:16,311 INFO L290 TraceCheckUtils]: 32: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:16,312 INFO L290 TraceCheckUtils]: 33: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:16,312 INFO L290 TraceCheckUtils]: 34: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:16,312 INFO L290 TraceCheckUtils]: 35: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:16,312 INFO L290 TraceCheckUtils]: 36: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:16,313 INFO L290 TraceCheckUtils]: 37: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:16,313 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} {24028#(<= main_~m~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {24010#false} is VALID [2022-04-27 22:25:16,314 INFO L290 TraceCheckUtils]: 39: Hoare triple {24010#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {24010#false} is VALID [2022-04-27 22:25:16,314 INFO L272 TraceCheckUtils]: 40: Hoare triple {24010#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {24010#false} is VALID [2022-04-27 22:25:16,314 INFO L290 TraceCheckUtils]: 41: Hoare triple {24010#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {24010#false} is VALID [2022-04-27 22:25:16,314 INFO L290 TraceCheckUtils]: 42: Hoare triple {24010#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {24010#false} is VALID [2022-04-27 22:25:16,314 INFO L290 TraceCheckUtils]: 43: Hoare triple {24010#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24010#false} is VALID [2022-04-27 22:25:16,314 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:16,314 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:17,440 INFO L290 TraceCheckUtils]: 43: Hoare triple {24010#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24010#false} is VALID [2022-04-27 22:25:17,440 INFO L290 TraceCheckUtils]: 42: Hoare triple {24010#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {24010#false} is VALID [2022-04-27 22:25:17,440 INFO L290 TraceCheckUtils]: 41: Hoare triple {24010#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {24010#false} is VALID [2022-04-27 22:25:17,440 INFO L272 TraceCheckUtils]: 40: Hoare triple {24010#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {24010#false} is VALID [2022-04-27 22:25:17,440 INFO L290 TraceCheckUtils]: 39: Hoare triple {24010#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {24010#false} is VALID [2022-04-27 22:25:17,441 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} {24028#(<= main_~m~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {24010#false} is VALID [2022-04-27 22:25:17,441 INFO L290 TraceCheckUtils]: 37: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:17,441 INFO L290 TraceCheckUtils]: 36: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:17,441 INFO L290 TraceCheckUtils]: 35: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:17,441 INFO L290 TraceCheckUtils]: 34: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:17,442 INFO L290 TraceCheckUtils]: 33: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:17,442 INFO L290 TraceCheckUtils]: 32: Hoare triple {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:17,442 INFO L290 TraceCheckUtils]: 31: Hoare triple {24239#(or (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24057#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:17,442 INFO L290 TraceCheckUtils]: 30: Hoare triple {24243#(or (<= student_version_~m (+ student_version_~l~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24239#(or (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:25:17,443 INFO L290 TraceCheckUtils]: 29: Hoare triple {24247#(or (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24243#(or (<= student_version_~m (+ student_version_~l~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:25:17,443 INFO L290 TraceCheckUtils]: 28: Hoare triple {24251#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24247#(or (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:25:17,444 INFO L290 TraceCheckUtils]: 27: Hoare triple {24255#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {24251#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:25:17,444 INFO L290 TraceCheckUtils]: 26: Hoare triple {24255#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {24255#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:25:17,444 INFO L290 TraceCheckUtils]: 25: Hoare triple {24255#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {24255#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:25:17,445 INFO L290 TraceCheckUtils]: 24: Hoare triple {24009#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {24255#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:25:17,445 INFO L272 TraceCheckUtils]: 23: Hoare triple {24028#(<= main_~m~0 (* main_~a~0 4))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:17,445 INFO L290 TraceCheckUtils]: 22: Hoare triple {24028#(<= main_~m~0 (* main_~a~0 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {24028#(<= main_~m~0 (* main_~a~0 4))} is VALID [2022-04-27 22:25:17,446 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} {24009#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {24028#(<= main_~m~0 (* main_~a~0 4))} is VALID [2022-04-27 22:25:17,446 INFO L290 TraceCheckUtils]: 20: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:17,446 INFO L290 TraceCheckUtils]: 19: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:17,446 INFO L290 TraceCheckUtils]: 18: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:17,446 INFO L290 TraceCheckUtils]: 17: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:17,447 INFO L290 TraceCheckUtils]: 16: Hoare triple {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:17,447 INFO L290 TraceCheckUtils]: 15: Hoare triple {24292#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {24050#(<= |correct_version_#in~m| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:25:17,447 INFO L290 TraceCheckUtils]: 14: Hoare triple {24296#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24292#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:17,448 INFO L290 TraceCheckUtils]: 13: Hoare triple {24300#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24296#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:25:17,448 INFO L290 TraceCheckUtils]: 12: Hoare triple {24304#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24300#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:17,449 INFO L290 TraceCheckUtils]: 11: Hoare triple {24308#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {24304#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:17,449 INFO L290 TraceCheckUtils]: 10: Hoare triple {24308#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {24308#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:17,449 INFO L290 TraceCheckUtils]: 9: Hoare triple {24308#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {24308#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:17,449 INFO L290 TraceCheckUtils]: 8: Hoare triple {24009#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {24308#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 4)))} is VALID [2022-04-27 22:25:17,449 INFO L272 TraceCheckUtils]: 7: Hoare triple {24009#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L290 TraceCheckUtils]: 6: Hoare triple {24009#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {24009#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L272 TraceCheckUtils]: 4: Hoare triple {24009#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24009#true} {24009#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {24009#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {24009#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L272 TraceCheckUtils]: 0: Hoare triple {24009#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24009#true} is VALID [2022-04-27 22:25:17,450 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:17,450 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [437744946] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:17,450 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:17,451 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 15, 15] total 37 [2022-04-27 22:25:17,451 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1677256665] [2022-04-27 22:25:17,451 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:17,451 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 44 [2022-04-27 22:25:17,451 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:17,451 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:17,484 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:17,484 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-04-27 22:25:17,485 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:17,485 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-04-27 22:25:17,485 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=117, Invalid=1215, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:25:17,485 INFO L87 Difference]: Start difference. First operand 200 states and 236 transitions. Second operand has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:21,447 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:21,448 INFO L93 Difference]: Finished difference Result 244 states and 289 transitions. [2022-04-27 22:25:21,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 22:25:21,448 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 44 [2022-04-27 22:25:21,448 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:21,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:21,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 114 transitions. [2022-04-27 22:25:21,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:21,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 114 transitions. [2022-04-27 22:25:21,464 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 114 transitions. [2022-04-27 22:25:21,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:21,568 INFO L225 Difference]: With dead ends: 244 [2022-04-27 22:25:21,569 INFO L226 Difference]: Without dead ends: 230 [2022-04-27 22:25:21,570 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 55 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 407 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=300, Invalid=2892, Unknown=0, NotChecked=0, Total=3192 [2022-04-27 22:25:21,570 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 350 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 1874 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 355 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 1923 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 1874 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:21,570 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [355 Valid, 181 Invalid, 1923 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 1874 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-27 22:25:21,571 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-27 22:25:22,034 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 221. [2022-04-27 22:25:22,034 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:22,034 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand has 221 states, 182 states have (on average 1.2087912087912087) internal successors, (220), 202 states have internal predecessors, (220), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (27), 13 states have call predecessors, (27), 13 states have call successors, (27) [2022-04-27 22:25:22,035 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand has 221 states, 182 states have (on average 1.2087912087912087) internal successors, (220), 202 states have internal predecessors, (220), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (27), 13 states have call predecessors, (27), 13 states have call successors, (27) [2022-04-27 22:25:22,035 INFO L87 Difference]: Start difference. First operand 230 states. Second operand has 221 states, 182 states have (on average 1.2087912087912087) internal successors, (220), 202 states have internal predecessors, (220), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (27), 13 states have call predecessors, (27), 13 states have call successors, (27) [2022-04-27 22:25:22,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:22,038 INFO L93 Difference]: Finished difference Result 230 states and 272 transitions. [2022-04-27 22:25:22,038 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 272 transitions. [2022-04-27 22:25:22,039 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:22,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:22,039 INFO L74 IsIncluded]: Start isIncluded. First operand has 221 states, 182 states have (on average 1.2087912087912087) internal successors, (220), 202 states have internal predecessors, (220), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (27), 13 states have call predecessors, (27), 13 states have call successors, (27) Second operand 230 states. [2022-04-27 22:25:22,039 INFO L87 Difference]: Start difference. First operand has 221 states, 182 states have (on average 1.2087912087912087) internal successors, (220), 202 states have internal predecessors, (220), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (27), 13 states have call predecessors, (27), 13 states have call successors, (27) Second operand 230 states. [2022-04-27 22:25:22,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:22,043 INFO L93 Difference]: Finished difference Result 230 states and 272 transitions. [2022-04-27 22:25:22,043 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 272 transitions. [2022-04-27 22:25:22,043 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:22,043 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:22,043 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:22,044 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:22,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 221 states, 182 states have (on average 1.2087912087912087) internal successors, (220), 202 states have internal predecessors, (220), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (27), 13 states have call predecessors, (27), 13 states have call successors, (27) [2022-04-27 22:25:22,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 221 states to 221 states and 262 transitions. [2022-04-27 22:25:22,047 INFO L78 Accepts]: Start accepts. Automaton has 221 states and 262 transitions. Word has length 44 [2022-04-27 22:25:22,047 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:22,047 INFO L495 AbstractCegarLoop]: Abstraction has 221 states and 262 transitions. [2022-04-27 22:25:22,047 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:22,047 INFO L276 IsEmpty]: Start isEmpty. Operand 221 states and 262 transitions. [2022-04-27 22:25:22,048 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 22:25:22,048 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:22,049 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:22,069 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:22,251 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:22,251 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:22,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:22,252 INFO L85 PathProgramCache]: Analyzing trace with hash -321425667, now seen corresponding path program 24 times [2022-04-27 22:25:22,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:22,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1793841414] [2022-04-27 22:25:22,252 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:22,252 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:22,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:22,309 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:22,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:22,312 INFO L290 TraceCheckUtils]: 0: Hoare triple {25517#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {25482#true} is VALID [2022-04-27 22:25:22,312 INFO L290 TraceCheckUtils]: 1: Hoare triple {25482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:22,312 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {25482#true} {25482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:22,312 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:22,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:22,398 INFO L290 TraceCheckUtils]: 0: Hoare triple {25482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,398 INFO L290 TraceCheckUtils]: 1: Hoare triple {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,399 INFO L290 TraceCheckUtils]: 3: Hoare triple {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25519#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,399 INFO L290 TraceCheckUtils]: 4: Hoare triple {25519#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25520#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,400 INFO L290 TraceCheckUtils]: 5: Hoare triple {25520#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25521#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,400 INFO L290 TraceCheckUtils]: 6: Hoare triple {25521#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25522#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,401 INFO L290 TraceCheckUtils]: 7: Hoare triple {25522#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25523#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 4) 1) correct_version_~m))} is VALID [2022-04-27 22:25:22,401 INFO L290 TraceCheckUtils]: 8: Hoare triple {25523#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 4) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,401 INFO L290 TraceCheckUtils]: 9: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,402 INFO L290 TraceCheckUtils]: 10: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,402 INFO L290 TraceCheckUtils]: 11: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,402 INFO L290 TraceCheckUtils]: 12: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,402 INFO L290 TraceCheckUtils]: 13: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,403 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} {25482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} is VALID [2022-04-27 22:25:22,403 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:25:22,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:22,505 INFO L290 TraceCheckUtils]: 0: Hoare triple {25482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:25:22,506 INFO L290 TraceCheckUtils]: 1: Hoare triple {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:25:22,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:25:22,506 INFO L290 TraceCheckUtils]: 3: Hoare triple {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25526#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:25:22,507 INFO L290 TraceCheckUtils]: 4: Hoare triple {25526#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25527#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:25:22,507 INFO L290 TraceCheckUtils]: 5: Hoare triple {25527#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25528#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:25:22,508 INFO L290 TraceCheckUtils]: 6: Hoare triple {25528#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25529#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 4)))} is VALID [2022-04-27 22:25:22,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {25529#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 4)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,508 INFO L290 TraceCheckUtils]: 8: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,509 INFO L290 TraceCheckUtils]: 9: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,509 INFO L290 TraceCheckUtils]: 10: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,509 INFO L290 TraceCheckUtils]: 11: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,509 INFO L290 TraceCheckUtils]: 12: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,510 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {25483#false} is VALID [2022-04-27 22:25:22,510 INFO L272 TraceCheckUtils]: 0: Hoare triple {25482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25517#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:22,510 INFO L290 TraceCheckUtils]: 1: Hoare triple {25517#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {25482#true} is VALID [2022-04-27 22:25:22,511 INFO L290 TraceCheckUtils]: 2: Hoare triple {25482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:22,511 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25482#true} {25482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:22,511 INFO L272 TraceCheckUtils]: 4: Hoare triple {25482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:22,511 INFO L290 TraceCheckUtils]: 5: Hoare triple {25482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:22,511 INFO L290 TraceCheckUtils]: 6: Hoare triple {25482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:22,511 INFO L272 TraceCheckUtils]: 7: Hoare triple {25482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:22,511 INFO L290 TraceCheckUtils]: 8: Hoare triple {25482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,512 INFO L290 TraceCheckUtils]: 10: Hoare triple {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,512 INFO L290 TraceCheckUtils]: 11: Hoare triple {25518#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25519#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,513 INFO L290 TraceCheckUtils]: 12: Hoare triple {25519#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25520#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,513 INFO L290 TraceCheckUtils]: 13: Hoare triple {25520#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25521#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {25521#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25522#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:22,514 INFO L290 TraceCheckUtils]: 15: Hoare triple {25522#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25523#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 4) 1) correct_version_~m))} is VALID [2022-04-27 22:25:22,514 INFO L290 TraceCheckUtils]: 16: Hoare triple {25523#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 4) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,515 INFO L290 TraceCheckUtils]: 17: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,515 INFO L290 TraceCheckUtils]: 18: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,515 INFO L290 TraceCheckUtils]: 19: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,515 INFO L290 TraceCheckUtils]: 20: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,516 INFO L290 TraceCheckUtils]: 21: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:22,516 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} {25482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} is VALID [2022-04-27 22:25:22,516 INFO L290 TraceCheckUtils]: 23: Hoare triple {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} is VALID [2022-04-27 22:25:22,517 INFO L272 TraceCheckUtils]: 24: Hoare triple {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:22,517 INFO L290 TraceCheckUtils]: 25: Hoare triple {25482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:25:22,517 INFO L290 TraceCheckUtils]: 26: Hoare triple {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:25:22,518 INFO L290 TraceCheckUtils]: 27: Hoare triple {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:25:22,518 INFO L290 TraceCheckUtils]: 28: Hoare triple {25525#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25526#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:25:22,518 INFO L290 TraceCheckUtils]: 29: Hoare triple {25526#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25527#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:25:22,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {25527#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25528#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:25:22,519 INFO L290 TraceCheckUtils]: 31: Hoare triple {25528#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25529#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 4)))} is VALID [2022-04-27 22:25:22,520 INFO L290 TraceCheckUtils]: 32: Hoare triple {25529#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 4)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,520 INFO L290 TraceCheckUtils]: 33: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,520 INFO L290 TraceCheckUtils]: 34: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,520 INFO L290 TraceCheckUtils]: 35: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,521 INFO L290 TraceCheckUtils]: 36: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,521 INFO L290 TraceCheckUtils]: 37: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:22,521 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {25483#false} is VALID [2022-04-27 22:25:22,521 INFO L290 TraceCheckUtils]: 39: Hoare triple {25483#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {25483#false} is VALID [2022-04-27 22:25:22,522 INFO L272 TraceCheckUtils]: 40: Hoare triple {25483#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {25483#false} is VALID [2022-04-27 22:25:22,522 INFO L290 TraceCheckUtils]: 41: Hoare triple {25483#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {25483#false} is VALID [2022-04-27 22:25:22,522 INFO L290 TraceCheckUtils]: 42: Hoare triple {25483#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {25483#false} is VALID [2022-04-27 22:25:22,522 INFO L290 TraceCheckUtils]: 43: Hoare triple {25483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25483#false} is VALID [2022-04-27 22:25:22,522 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:22,522 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:22,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1793841414] [2022-04-27 22:25:22,522 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1793841414] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:22,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1049583061] [2022-04-27 22:25:22,522 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:25:22,522 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:22,523 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:22,544 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:22,560 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-27 22:25:22,617 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-27 22:25:22,618 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:22,619 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 22:25:22,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:22,629 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:24,765 INFO L272 TraceCheckUtils]: 0: Hoare triple {25482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L290 TraceCheckUtils]: 1: Hoare triple {25482#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L290 TraceCheckUtils]: 2: Hoare triple {25482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25482#true} {25482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L272 TraceCheckUtils]: 4: Hoare triple {25482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L290 TraceCheckUtils]: 5: Hoare triple {25482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L290 TraceCheckUtils]: 6: Hoare triple {25482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L272 TraceCheckUtils]: 7: Hoare triple {25482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:24,766 INFO L290 TraceCheckUtils]: 8: Hoare triple {25482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {25558#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:24,767 INFO L290 TraceCheckUtils]: 9: Hoare triple {25558#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {25558#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:24,767 INFO L290 TraceCheckUtils]: 10: Hoare triple {25558#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {25558#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:24,768 INFO L290 TraceCheckUtils]: 11: Hoare triple {25558#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25568#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:24,768 INFO L290 TraceCheckUtils]: 12: Hoare triple {25568#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25572#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:24,769 INFO L290 TraceCheckUtils]: 13: Hoare triple {25572#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25576#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:24,769 INFO L290 TraceCheckUtils]: 14: Hoare triple {25576#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25580#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 4)))} is VALID [2022-04-27 22:25:24,770 INFO L290 TraceCheckUtils]: 15: Hoare triple {25580#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 4)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:24,770 INFO L290 TraceCheckUtils]: 16: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:24,770 INFO L290 TraceCheckUtils]: 17: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:24,770 INFO L290 TraceCheckUtils]: 18: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:24,771 INFO L290 TraceCheckUtils]: 19: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:24,771 INFO L290 TraceCheckUtils]: 20: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:24,771 INFO L290 TraceCheckUtils]: 21: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:24,771 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} {25482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} is VALID [2022-04-27 22:25:24,772 INFO L290 TraceCheckUtils]: 23: Hoare triple {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} is VALID [2022-04-27 22:25:24,772 INFO L272 TraceCheckUtils]: 24: Hoare triple {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:24,772 INFO L290 TraceCheckUtils]: 25: Hoare triple {25482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {25614#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:25:24,773 INFO L290 TraceCheckUtils]: 26: Hoare triple {25614#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {25614#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:25:24,773 INFO L290 TraceCheckUtils]: 27: Hoare triple {25614#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {25614#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:25:24,773 INFO L290 TraceCheckUtils]: 28: Hoare triple {25614#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25624#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:25:24,774 INFO L290 TraceCheckUtils]: 29: Hoare triple {25624#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25628#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:25:24,774 INFO L290 TraceCheckUtils]: 30: Hoare triple {25628#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25632#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:25:24,775 INFO L290 TraceCheckUtils]: 31: Hoare triple {25632#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25636#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 4)) |student_version_#in~a|))} is VALID [2022-04-27 22:25:24,775 INFO L290 TraceCheckUtils]: 32: Hoare triple {25636#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 4)) |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:24,775 INFO L290 TraceCheckUtils]: 33: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:24,776 INFO L290 TraceCheckUtils]: 34: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:24,776 INFO L290 TraceCheckUtils]: 35: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:24,776 INFO L290 TraceCheckUtils]: 36: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:24,776 INFO L290 TraceCheckUtils]: 37: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:24,777 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {25483#false} is VALID [2022-04-27 22:25:24,777 INFO L290 TraceCheckUtils]: 39: Hoare triple {25483#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {25483#false} is VALID [2022-04-27 22:25:24,777 INFO L272 TraceCheckUtils]: 40: Hoare triple {25483#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {25483#false} is VALID [2022-04-27 22:25:24,777 INFO L290 TraceCheckUtils]: 41: Hoare triple {25483#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {25483#false} is VALID [2022-04-27 22:25:24,777 INFO L290 TraceCheckUtils]: 42: Hoare triple {25483#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {25483#false} is VALID [2022-04-27 22:25:24,777 INFO L290 TraceCheckUtils]: 43: Hoare triple {25483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25483#false} is VALID [2022-04-27 22:25:24,777 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:24,777 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:25,749 INFO L290 TraceCheckUtils]: 43: Hoare triple {25483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25483#false} is VALID [2022-04-27 22:25:25,749 INFO L290 TraceCheckUtils]: 42: Hoare triple {25483#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {25483#false} is VALID [2022-04-27 22:25:25,750 INFO L290 TraceCheckUtils]: 41: Hoare triple {25483#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {25483#false} is VALID [2022-04-27 22:25:25,750 INFO L272 TraceCheckUtils]: 40: Hoare triple {25483#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {25483#false} is VALID [2022-04-27 22:25:25,750 INFO L290 TraceCheckUtils]: 39: Hoare triple {25483#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {25483#false} is VALID [2022-04-27 22:25:25,750 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {25483#false} is VALID [2022-04-27 22:25:25,751 INFO L290 TraceCheckUtils]: 37: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:25,751 INFO L290 TraceCheckUtils]: 36: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:25,751 INFO L290 TraceCheckUtils]: 35: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:25,751 INFO L290 TraceCheckUtils]: 34: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:25,752 INFO L290 TraceCheckUtils]: 33: Hoare triple {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:25,752 INFO L290 TraceCheckUtils]: 32: Hoare triple {25709#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {25530#(<= |student_version_#in~m| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:25:25,753 INFO L290 TraceCheckUtils]: 31: Hoare triple {25713#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25709#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:25:25,753 INFO L290 TraceCheckUtils]: 30: Hoare triple {25717#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25713#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:25:25,754 INFO L290 TraceCheckUtils]: 29: Hoare triple {25721#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25717#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:25:25,754 INFO L290 TraceCheckUtils]: 28: Hoare triple {25725#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {25721#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:25:25,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {25725#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {25725#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:25:25,755 INFO L290 TraceCheckUtils]: 26: Hoare triple {25725#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {25725#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:25:25,755 INFO L290 TraceCheckUtils]: 25: Hoare triple {25482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {25725#(or (<= |student_version_#in~m| (* |student_version_#in~a| 4)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:25:25,755 INFO L272 TraceCheckUtils]: 24: Hoare triple {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:25,756 INFO L290 TraceCheckUtils]: 23: Hoare triple {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} is VALID [2022-04-27 22:25:25,756 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} {25482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {25502#(<= (+ (* main_~a~0 4) 1) main_~m~0)} is VALID [2022-04-27 22:25:25,757 INFO L290 TraceCheckUtils]: 21: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:25,757 INFO L290 TraceCheckUtils]: 20: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:25,757 INFO L290 TraceCheckUtils]: 19: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:25,758 INFO L290 TraceCheckUtils]: 18: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:25,758 INFO L290 TraceCheckUtils]: 17: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:25,758 INFO L290 TraceCheckUtils]: 16: Hoare triple {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:25,758 INFO L290 TraceCheckUtils]: 15: Hoare triple {25765#(or (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25524#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:25:25,759 INFO L290 TraceCheckUtils]: 14: Hoare triple {25769#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25765#(or (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:25:25,759 INFO L290 TraceCheckUtils]: 13: Hoare triple {25773#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25769#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:25:25,760 INFO L290 TraceCheckUtils]: 12: Hoare triple {25777#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25773#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:25:25,761 INFO L290 TraceCheckUtils]: 11: Hoare triple {25781#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {25777#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:25:25,761 INFO L290 TraceCheckUtils]: 10: Hoare triple {25781#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {25781#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:25:25,761 INFO L290 TraceCheckUtils]: 9: Hoare triple {25781#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {25781#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:25:25,762 INFO L290 TraceCheckUtils]: 8: Hoare triple {25482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {25781#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:25:25,762 INFO L272 TraceCheckUtils]: 7: Hoare triple {25482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:25,762 INFO L290 TraceCheckUtils]: 6: Hoare triple {25482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:25,762 INFO L290 TraceCheckUtils]: 5: Hoare triple {25482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {25482#true} is VALID [2022-04-27 22:25:25,762 INFO L272 TraceCheckUtils]: 4: Hoare triple {25482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:25,762 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25482#true} {25482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:25,762 INFO L290 TraceCheckUtils]: 2: Hoare triple {25482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:25,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {25482#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {25482#true} is VALID [2022-04-27 22:25:25,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {25482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {25482#true} is VALID [2022-04-27 22:25:25,763 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:25,763 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1049583061] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:25,763 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:25,763 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 15, 15] total 37 [2022-04-27 22:25:25,763 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [417455482] [2022-04-27 22:25:25,763 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:25,764 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 44 [2022-04-27 22:25:25,764 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:25,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:25,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:25,802 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-04-27 22:25:25,802 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:25,802 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-04-27 22:25:25,803 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=117, Invalid=1215, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:25:25,803 INFO L87 Difference]: Start difference. First operand 221 states and 262 transitions. Second operand has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:28,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:28,921 INFO L93 Difference]: Finished difference Result 236 states and 277 transitions. [2022-04-27 22:25:28,921 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 22:25:28,921 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 44 [2022-04-27 22:25:28,921 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:28,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:28,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 113 transitions. [2022-04-27 22:25:28,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:28,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 113 transitions. [2022-04-27 22:25:28,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 113 transitions. [2022-04-27 22:25:29,052 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-27 22:25:29,055 INFO L225 Difference]: With dead ends: 236 [2022-04-27 22:25:29,055 INFO L226 Difference]: Without dead ends: 224 [2022-04-27 22:25:29,056 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 55 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 415 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=300, Invalid=2892, Unknown=0, NotChecked=0, Total=3192 [2022-04-27 22:25:29,057 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 374 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 1723 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 383 SdHoareTripleChecker+Valid, 168 SdHoareTripleChecker+Invalid, 1765 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 1723 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:29,057 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [383 Valid, 168 Invalid, 1765 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 1723 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-27 22:25:29,057 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-27 22:25:29,738 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 222. [2022-04-27 22:25:29,739 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:29,739 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 222 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 203 states have internal predecessors, (221), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:25:29,740 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 222 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 203 states have internal predecessors, (221), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:25:29,740 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 222 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 203 states have internal predecessors, (221), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:25:29,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:29,743 INFO L93 Difference]: Finished difference Result 224 states and 263 transitions. [2022-04-27 22:25:29,743 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 263 transitions. [2022-04-27 22:25:29,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:29,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:29,744 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 203 states have internal predecessors, (221), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) Second operand 224 states. [2022-04-27 22:25:29,744 INFO L87 Difference]: Start difference. First operand has 222 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 203 states have internal predecessors, (221), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) Second operand 224 states. [2022-04-27 22:25:29,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:29,747 INFO L93 Difference]: Finished difference Result 224 states and 263 transitions. [2022-04-27 22:25:29,748 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 263 transitions. [2022-04-27 22:25:29,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:29,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:29,748 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:29,748 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:29,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 203 states have internal predecessors, (221), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:25:29,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 261 transitions. [2022-04-27 22:25:29,752 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 261 transitions. Word has length 44 [2022-04-27 22:25:29,752 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:29,752 INFO L495 AbstractCegarLoop]: Abstraction has 222 states and 261 transitions. [2022-04-27 22:25:29,752 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 37 states have (on average 1.8918918918918919) internal successors, (70), 36 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:29,752 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 261 transitions. [2022-04-27 22:25:29,753 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 22:25:29,753 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:29,753 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:29,785 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:29,969 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable33,25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:29,970 INFO L420 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:29,970 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:29,970 INFO L85 PathProgramCache]: Analyzing trace with hash 1285627670, now seen corresponding path program 25 times [2022-04-27 22:25:29,970 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:29,970 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1056800053] [2022-04-27 22:25:29,970 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:29,970 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:29,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:29,996 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:29,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:29,998 INFO L290 TraceCheckUtils]: 0: Hoare triple {26967#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {26933#true} is VALID [2022-04-27 22:25:29,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {26933#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:29,999 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {26933#true} {26933#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:29,999 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:30,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:30,042 INFO L290 TraceCheckUtils]: 0: Hoare triple {26933#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {26968#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,042 INFO L290 TraceCheckUtils]: 1: Hoare triple {26968#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26969#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,043 INFO L290 TraceCheckUtils]: 2: Hoare triple {26969#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26970#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,043 INFO L290 TraceCheckUtils]: 3: Hoare triple {26970#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,044 INFO L290 TraceCheckUtils]: 4: Hoare triple {26971#(<= 3 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,044 INFO L290 TraceCheckUtils]: 5: Hoare triple {26971#(<= 3 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,044 INFO L290 TraceCheckUtils]: 6: Hoare triple {26971#(<= 3 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,044 INFO L290 TraceCheckUtils]: 7: Hoare triple {26971#(<= 3 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26972#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,045 INFO L290 TraceCheckUtils]: 8: Hoare triple {26972#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26973#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,045 INFO L290 TraceCheckUtils]: 9: Hoare triple {26973#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26974#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,046 INFO L290 TraceCheckUtils]: 10: Hoare triple {26974#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,046 INFO L290 TraceCheckUtils]: 11: Hoare triple {26934#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {26934#false} is VALID [2022-04-27 22:25:30,046 INFO L290 TraceCheckUtils]: 12: Hoare triple {26934#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,046 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {26934#false} {26933#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,046 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 23 [2022-04-27 22:25:30,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 0: Hoare triple {26933#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 1: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 2: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 3: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 4: Hoare triple {26933#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 5: Hoare triple {26933#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 6: Hoare triple {26933#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 7: Hoare triple {26933#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,053 INFO L290 TraceCheckUtils]: 9: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L290 TraceCheckUtils]: 10: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L290 TraceCheckUtils]: 11: Hoare triple {26933#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L290 TraceCheckUtils]: 12: Hoare triple {26933#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {26933#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {26933#true} {26934#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,054 INFO L272 TraceCheckUtils]: 0: Hoare triple {26933#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26967#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:30,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {26967#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L290 TraceCheckUtils]: 2: Hoare triple {26933#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26933#true} {26933#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,054 INFO L272 TraceCheckUtils]: 4: Hoare triple {26933#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,055 INFO L290 TraceCheckUtils]: 5: Hoare triple {26933#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,055 INFO L290 TraceCheckUtils]: 6: Hoare triple {26933#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,055 INFO L272 TraceCheckUtils]: 7: Hoare triple {26933#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,055 INFO L290 TraceCheckUtils]: 8: Hoare triple {26933#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {26968#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,055 INFO L290 TraceCheckUtils]: 9: Hoare triple {26968#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26969#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,056 INFO L290 TraceCheckUtils]: 10: Hoare triple {26969#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26970#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,056 INFO L290 TraceCheckUtils]: 11: Hoare triple {26970#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,057 INFO L290 TraceCheckUtils]: 12: Hoare triple {26971#(<= 3 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,057 INFO L290 TraceCheckUtils]: 13: Hoare triple {26971#(<= 3 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,057 INFO L290 TraceCheckUtils]: 14: Hoare triple {26971#(<= 3 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,057 INFO L290 TraceCheckUtils]: 15: Hoare triple {26971#(<= 3 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26972#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,058 INFO L290 TraceCheckUtils]: 16: Hoare triple {26972#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26973#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,058 INFO L290 TraceCheckUtils]: 17: Hoare triple {26973#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26974#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 18: Hoare triple {26974#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 19: Hoare triple {26934#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {26934#false} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 20: Hoare triple {26934#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,059 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26934#false} {26933#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 22: Hoare triple {26934#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {26934#false} is VALID [2022-04-27 22:25:30,059 INFO L272 TraceCheckUtils]: 23: Hoare triple {26934#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 24: Hoare triple {26933#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {26933#true} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 25: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 26: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 27: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 28: Hoare triple {26933#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 29: Hoare triple {26933#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {26933#true} is VALID [2022-04-27 22:25:30,059 INFO L290 TraceCheckUtils]: 30: Hoare triple {26933#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 31: Hoare triple {26933#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 32: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 33: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 34: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 35: Hoare triple {26933#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 36: Hoare triple {26933#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 37: Hoare triple {26933#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,060 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {26933#true} {26934#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 39: Hoare triple {26934#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {26934#false} is VALID [2022-04-27 22:25:30,060 INFO L272 TraceCheckUtils]: 40: Hoare triple {26934#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {26934#false} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 41: Hoare triple {26934#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {26934#false} is VALID [2022-04-27 22:25:30,060 INFO L290 TraceCheckUtils]: 42: Hoare triple {26934#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,061 INFO L290 TraceCheckUtils]: 43: Hoare triple {26934#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,061 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:25:30,061 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:30,061 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1056800053] [2022-04-27 22:25:30,061 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1056800053] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:30,061 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [750238866] [2022-04-27 22:25:30,061 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:25:30,061 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:30,061 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:30,062 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:30,109 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-27 22:25:30,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:30,144 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-27 22:25:30,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:30,152 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:30,290 INFO L272 TraceCheckUtils]: 0: Hoare triple {26933#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,290 INFO L290 TraceCheckUtils]: 1: Hoare triple {26933#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {26933#true} is VALID [2022-04-27 22:25:30,290 INFO L290 TraceCheckUtils]: 2: Hoare triple {26933#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,290 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26933#true} {26933#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,290 INFO L272 TraceCheckUtils]: 4: Hoare triple {26933#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,290 INFO L290 TraceCheckUtils]: 5: Hoare triple {26933#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,291 INFO L290 TraceCheckUtils]: 6: Hoare triple {26933#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,291 INFO L272 TraceCheckUtils]: 7: Hoare triple {26933#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,291 INFO L290 TraceCheckUtils]: 8: Hoare triple {26933#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {26968#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,291 INFO L290 TraceCheckUtils]: 9: Hoare triple {26968#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26969#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,292 INFO L290 TraceCheckUtils]: 10: Hoare triple {26969#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26970#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,292 INFO L290 TraceCheckUtils]: 11: Hoare triple {26970#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,293 INFO L290 TraceCheckUtils]: 12: Hoare triple {26971#(<= 3 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,293 INFO L290 TraceCheckUtils]: 13: Hoare triple {26971#(<= 3 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,293 INFO L290 TraceCheckUtils]: 14: Hoare triple {26971#(<= 3 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,293 INFO L290 TraceCheckUtils]: 15: Hoare triple {26971#(<= 3 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {27023#(and (<= 3 correct_version_~i~0) (<= correct_version_~x~0 0))} is VALID [2022-04-27 22:25:30,294 INFO L290 TraceCheckUtils]: 16: Hoare triple {27023#(and (<= 3 correct_version_~i~0) (<= correct_version_~x~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {27027#(and (<= 3 correct_version_~i~0) (<= correct_version_~x~0 1))} is VALID [2022-04-27 22:25:30,294 INFO L290 TraceCheckUtils]: 17: Hoare triple {27027#(and (<= 3 correct_version_~i~0) (<= correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {27031#(and (<= correct_version_~x~0 2) (<= 3 correct_version_~i~0))} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 18: Hoare triple {27031#(and (<= correct_version_~x~0 2) (<= 3 correct_version_~i~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 19: Hoare triple {26934#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 20: Hoare triple {26934#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26934#false} {26933#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 22: Hoare triple {26934#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L272 TraceCheckUtils]: 23: Hoare triple {26934#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 24: Hoare triple {26934#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 25: Hoare triple {26934#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 26: Hoare triple {26934#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 27: Hoare triple {26934#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26934#false} is VALID [2022-04-27 22:25:30,295 INFO L290 TraceCheckUtils]: 28: Hoare triple {26934#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 29: Hoare triple {26934#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 30: Hoare triple {26934#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 31: Hoare triple {26934#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 32: Hoare triple {26934#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 33: Hoare triple {26934#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 34: Hoare triple {26934#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 35: Hoare triple {26934#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 36: Hoare triple {26934#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 37: Hoare triple {26934#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {26934#false} {26934#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 39: Hoare triple {26934#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L272 TraceCheckUtils]: 40: Hoare triple {26934#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 41: Hoare triple {26934#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {26934#false} is VALID [2022-04-27 22:25:30,296 INFO L290 TraceCheckUtils]: 42: Hoare triple {26934#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,297 INFO L290 TraceCheckUtils]: 43: Hoare triple {26934#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,297 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:25:30,297 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 43: Hoare triple {26934#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 42: Hoare triple {26934#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 41: Hoare triple {26934#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {26934#false} is VALID [2022-04-27 22:25:30,424 INFO L272 TraceCheckUtils]: 40: Hoare triple {26934#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {26934#false} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 39: Hoare triple {26934#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {26934#false} is VALID [2022-04-27 22:25:30,424 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {26933#true} {26934#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 37: Hoare triple {26933#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 36: Hoare triple {26933#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {26933#true} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 35: Hoare triple {26933#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 34: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 33: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,424 INFO L290 TraceCheckUtils]: 32: Hoare triple {26933#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 31: Hoare triple {26933#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 30: Hoare triple {26933#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 29: Hoare triple {26933#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 28: Hoare triple {26933#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 27: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 26: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 25: Hoare triple {26933#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 24: Hoare triple {26933#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L272 TraceCheckUtils]: 23: Hoare triple {26934#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 22: Hoare triple {26934#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {26934#false} is VALID [2022-04-27 22:25:30,425 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26934#false} {26933#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {26934#false} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 20: Hoare triple {26934#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,425 INFO L290 TraceCheckUtils]: 19: Hoare triple {26934#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {26934#false} is VALID [2022-04-27 22:25:30,426 INFO L290 TraceCheckUtils]: 18: Hoare triple {26974#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {26934#false} is VALID [2022-04-27 22:25:30,426 INFO L290 TraceCheckUtils]: 17: Hoare triple {26973#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26974#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,427 INFO L290 TraceCheckUtils]: 16: Hoare triple {26972#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26973#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,427 INFO L290 TraceCheckUtils]: 15: Hoare triple {26971#(<= 3 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {26972#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:25:30,427 INFO L290 TraceCheckUtils]: 14: Hoare triple {26971#(<= 3 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,428 INFO L290 TraceCheckUtils]: 13: Hoare triple {26971#(<= 3 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,428 INFO L290 TraceCheckUtils]: 12: Hoare triple {26971#(<= 3 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,428 INFO L290 TraceCheckUtils]: 11: Hoare triple {26970#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26971#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,429 INFO L290 TraceCheckUtils]: 10: Hoare triple {26969#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26970#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,429 INFO L290 TraceCheckUtils]: 9: Hoare triple {26968#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {26969#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {26933#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {26968#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:25:30,430 INFO L272 TraceCheckUtils]: 7: Hoare triple {26933#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L290 TraceCheckUtils]: 6: Hoare triple {26933#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L290 TraceCheckUtils]: 5: Hoare triple {26933#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L272 TraceCheckUtils]: 4: Hoare triple {26933#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26933#true} {26933#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L290 TraceCheckUtils]: 2: Hoare triple {26933#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L290 TraceCheckUtils]: 1: Hoare triple {26933#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L272 TraceCheckUtils]: 0: Hoare triple {26933#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26933#true} is VALID [2022-04-27 22:25:30,430 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:25:30,430 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [750238866] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:30,430 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:30,431 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 13 [2022-04-27 22:25:30,431 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [358841904] [2022-04-27 22:25:30,431 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:30,431 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 3.6153846153846154) internal successors, (47), 12 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 44 [2022-04-27 22:25:30,431 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:30,431 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 3.6153846153846154) internal successors, (47), 12 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:30,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:30,462 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 22:25:30,462 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:30,462 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 22:25:30,462 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=103, Unknown=0, NotChecked=0, Total=156 [2022-04-27 22:25:30,462 INFO L87 Difference]: Start difference. First operand 222 states and 261 transitions. Second operand has 13 states, 13 states have (on average 3.6153846153846154) internal successors, (47), 12 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:31,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:31,507 INFO L93 Difference]: Finished difference Result 339 states and 391 transitions. [2022-04-27 22:25:31,507 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 22:25:31,507 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 3.6153846153846154) internal successors, (47), 12 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 44 [2022-04-27 22:25:31,508 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:31,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 3.6153846153846154) internal successors, (47), 12 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:31,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 84 transitions. [2022-04-27 22:25:31,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 3.6153846153846154) internal successors, (47), 12 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:31,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 84 transitions. [2022-04-27 22:25:31,510 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 84 transitions. [2022-04-27 22:25:31,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:31,561 INFO L225 Difference]: With dead ends: 339 [2022-04-27 22:25:31,562 INFO L226 Difference]: Without dead ends: 215 [2022-04-27 22:25:31,562 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 90 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=169, Invalid=337, Unknown=0, NotChecked=0, Total=506 [2022-04-27 22:25:31,564 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 69 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 131 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 52 SdHoareTripleChecker+Invalid, 158 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 131 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:31,564 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 52 Invalid, 158 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 131 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:25:31,565 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 215 states. [2022-04-27 22:25:32,263 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 215 to 207. [2022-04-27 22:25:32,263 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:32,264 INFO L82 GeneralOperation]: Start isEquivalent. First operand 215 states. Second operand has 207 states, 174 states have (on average 1.1954022988505748) internal successors, (208), 190 states have internal predecessors, (208), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:32,264 INFO L74 IsIncluded]: Start isIncluded. First operand 215 states. Second operand has 207 states, 174 states have (on average 1.1954022988505748) internal successors, (208), 190 states have internal predecessors, (208), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:32,264 INFO L87 Difference]: Start difference. First operand 215 states. Second operand has 207 states, 174 states have (on average 1.1954022988505748) internal successors, (208), 190 states have internal predecessors, (208), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:32,267 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:32,267 INFO L93 Difference]: Finished difference Result 215 states and 250 transitions. [2022-04-27 22:25:32,267 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 250 transitions. [2022-04-27 22:25:32,267 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:32,267 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:32,268 INFO L74 IsIncluded]: Start isIncluded. First operand has 207 states, 174 states have (on average 1.1954022988505748) internal successors, (208), 190 states have internal predecessors, (208), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) Second operand 215 states. [2022-04-27 22:25:32,268 INFO L87 Difference]: Start difference. First operand has 207 states, 174 states have (on average 1.1954022988505748) internal successors, (208), 190 states have internal predecessors, (208), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) Second operand 215 states. [2022-04-27 22:25:32,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:32,270 INFO L93 Difference]: Finished difference Result 215 states and 250 transitions. [2022-04-27 22:25:32,271 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 250 transitions. [2022-04-27 22:25:32,271 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:32,271 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:32,271 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:32,271 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:32,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 207 states, 174 states have (on average 1.1954022988505748) internal successors, (208), 190 states have internal predecessors, (208), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:32,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 207 states to 207 states and 240 transitions. [2022-04-27 22:25:32,274 INFO L78 Accepts]: Start accepts. Automaton has 207 states and 240 transitions. Word has length 44 [2022-04-27 22:25:32,274 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:32,274 INFO L495 AbstractCegarLoop]: Abstraction has 207 states and 240 transitions. [2022-04-27 22:25:32,274 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 3.6153846153846154) internal successors, (47), 12 states have internal predecessors, (47), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:32,275 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 240 transitions. [2022-04-27 22:25:32,275 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 22:25:32,275 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:32,275 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:32,292 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:32,492 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-27 22:25:32,492 INFO L420 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:32,492 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:32,492 INFO L85 PathProgramCache]: Analyzing trace with hash -1442855301, now seen corresponding path program 26 times [2022-04-27 22:25:32,492 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:32,492 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1671741998] [2022-04-27 22:25:32,493 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:32,493 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:32,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:32,521 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:32,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:32,524 INFO L290 TraceCheckUtils]: 0: Hoare triple {28479#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {28445#true} is VALID [2022-04-27 22:25:32,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {28445#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,524 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {28445#true} {28445#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,524 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:32,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 0: Hoare triple {28445#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 3: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 4: Hoare triple {28445#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 5: Hoare triple {28445#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 6: Hoare triple {28445#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 7: Hoare triple {28445#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 8: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 9: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,530 INFO L290 TraceCheckUtils]: 10: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,531 INFO L290 TraceCheckUtils]: 11: Hoare triple {28445#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,531 INFO L290 TraceCheckUtils]: 12: Hoare triple {28445#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {28445#true} is VALID [2022-04-27 22:25:32,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {28445#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,531 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {28445#true} {28445#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,531 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:25:32,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:32,579 INFO L290 TraceCheckUtils]: 0: Hoare triple {28445#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {28480#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:25:32,580 INFO L290 TraceCheckUtils]: 1: Hoare triple {28480#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28481#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:25:32,580 INFO L290 TraceCheckUtils]: 2: Hoare triple {28481#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28482#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:25:32,581 INFO L290 TraceCheckUtils]: 3: Hoare triple {28482#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,581 INFO L290 TraceCheckUtils]: 4: Hoare triple {28483#(<= 3 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,581 INFO L290 TraceCheckUtils]: 5: Hoare triple {28483#(<= 3 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,582 INFO L290 TraceCheckUtils]: 6: Hoare triple {28483#(<= 3 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,582 INFO L290 TraceCheckUtils]: 7: Hoare triple {28483#(<= 3 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28484#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,582 INFO L290 TraceCheckUtils]: 8: Hoare triple {28484#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28485#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,583 INFO L290 TraceCheckUtils]: 9: Hoare triple {28485#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28486#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,583 INFO L290 TraceCheckUtils]: 10: Hoare triple {28486#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,583 INFO L290 TraceCheckUtils]: 11: Hoare triple {28446#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {28446#false} is VALID [2022-04-27 22:25:32,584 INFO L290 TraceCheckUtils]: 12: Hoare triple {28446#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,584 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {28446#false} {28445#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {28446#false} is VALID [2022-04-27 22:25:32,584 INFO L272 TraceCheckUtils]: 0: Hoare triple {28445#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28479#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:32,584 INFO L290 TraceCheckUtils]: 1: Hoare triple {28479#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {28445#true} is VALID [2022-04-27 22:25:32,584 INFO L290 TraceCheckUtils]: 2: Hoare triple {28445#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,584 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28445#true} {28445#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,584 INFO L272 TraceCheckUtils]: 4: Hoare triple {28445#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 5: Hoare triple {28445#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 6: Hoare triple {28445#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L272 TraceCheckUtils]: 7: Hoare triple {28445#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 8: Hoare triple {28445#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 9: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 10: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 11: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 12: Hoare triple {28445#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 13: Hoare triple {28445#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 14: Hoare triple {28445#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 15: Hoare triple {28445#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 16: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 17: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,585 INFO L290 TraceCheckUtils]: 18: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,586 INFO L290 TraceCheckUtils]: 19: Hoare triple {28445#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,586 INFO L290 TraceCheckUtils]: 20: Hoare triple {28445#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {28445#true} is VALID [2022-04-27 22:25:32,586 INFO L290 TraceCheckUtils]: 21: Hoare triple {28445#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,586 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {28445#true} {28445#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,586 INFO L290 TraceCheckUtils]: 23: Hoare triple {28445#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {28445#true} is VALID [2022-04-27 22:25:32,586 INFO L272 TraceCheckUtils]: 24: Hoare triple {28445#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,586 INFO L290 TraceCheckUtils]: 25: Hoare triple {28445#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {28480#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:25:32,587 INFO L290 TraceCheckUtils]: 26: Hoare triple {28480#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28481#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:25:32,587 INFO L290 TraceCheckUtils]: 27: Hoare triple {28481#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28482#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:25:32,588 INFO L290 TraceCheckUtils]: 28: Hoare triple {28482#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,588 INFO L290 TraceCheckUtils]: 29: Hoare triple {28483#(<= 3 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,588 INFO L290 TraceCheckUtils]: 30: Hoare triple {28483#(<= 3 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,588 INFO L290 TraceCheckUtils]: 31: Hoare triple {28483#(<= 3 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,589 INFO L290 TraceCheckUtils]: 32: Hoare triple {28483#(<= 3 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28484#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,589 INFO L290 TraceCheckUtils]: 33: Hoare triple {28484#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28485#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,590 INFO L290 TraceCheckUtils]: 34: Hoare triple {28485#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28486#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,590 INFO L290 TraceCheckUtils]: 35: Hoare triple {28486#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,590 INFO L290 TraceCheckUtils]: 36: Hoare triple {28446#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {28446#false} is VALID [2022-04-27 22:25:32,590 INFO L290 TraceCheckUtils]: 37: Hoare triple {28446#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,590 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {28446#false} {28445#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {28446#false} is VALID [2022-04-27 22:25:32,590 INFO L290 TraceCheckUtils]: 39: Hoare triple {28446#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {28446#false} is VALID [2022-04-27 22:25:32,591 INFO L272 TraceCheckUtils]: 40: Hoare triple {28446#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {28446#false} is VALID [2022-04-27 22:25:32,591 INFO L290 TraceCheckUtils]: 41: Hoare triple {28446#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {28446#false} is VALID [2022-04-27 22:25:32,591 INFO L290 TraceCheckUtils]: 42: Hoare triple {28446#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,591 INFO L290 TraceCheckUtils]: 43: Hoare triple {28446#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,591 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:25:32,591 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:32,591 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1671741998] [2022-04-27 22:25:32,591 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1671741998] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:32,591 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [40157359] [2022-04-27 22:25:32,591 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:25:32,591 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:32,592 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:32,592 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:32,595 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-27 22:25:32,656 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:25:32,656 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:32,657 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-27 22:25:32,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:32,667 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:32,840 INFO L272 TraceCheckUtils]: 0: Hoare triple {28445#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L290 TraceCheckUtils]: 1: Hoare triple {28445#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L290 TraceCheckUtils]: 2: Hoare triple {28445#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28445#true} {28445#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L272 TraceCheckUtils]: 4: Hoare triple {28445#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L290 TraceCheckUtils]: 5: Hoare triple {28445#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L290 TraceCheckUtils]: 6: Hoare triple {28445#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L272 TraceCheckUtils]: 7: Hoare triple {28445#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,840 INFO L290 TraceCheckUtils]: 8: Hoare triple {28445#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 9: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 10: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 11: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 12: Hoare triple {28445#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 13: Hoare triple {28445#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 14: Hoare triple {28445#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 15: Hoare triple {28445#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 16: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 17: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 18: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 19: Hoare triple {28445#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 20: Hoare triple {28445#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {28445#true} is VALID [2022-04-27 22:25:32,841 INFO L290 TraceCheckUtils]: 21: Hoare triple {28445#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,842 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {28445#true} {28445#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,842 INFO L290 TraceCheckUtils]: 23: Hoare triple {28445#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {28445#true} is VALID [2022-04-27 22:25:32,842 INFO L272 TraceCheckUtils]: 24: Hoare triple {28445#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,842 INFO L290 TraceCheckUtils]: 25: Hoare triple {28445#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {28480#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:25:32,842 INFO L290 TraceCheckUtils]: 26: Hoare triple {28480#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28481#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:25:32,843 INFO L290 TraceCheckUtils]: 27: Hoare triple {28481#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28482#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:25:32,843 INFO L290 TraceCheckUtils]: 28: Hoare triple {28482#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,843 INFO L290 TraceCheckUtils]: 29: Hoare triple {28483#(<= 3 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,843 INFO L290 TraceCheckUtils]: 30: Hoare triple {28483#(<= 3 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,844 INFO L290 TraceCheckUtils]: 31: Hoare triple {28483#(<= 3 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,844 INFO L290 TraceCheckUtils]: 32: Hoare triple {28483#(<= 3 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28586#(and (<= student_version_~x~1 0) (<= 3 student_version_~i~1))} is VALID [2022-04-27 22:25:32,844 INFO L290 TraceCheckUtils]: 33: Hoare triple {28586#(and (<= student_version_~x~1 0) (<= 3 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28590#(and (<= 3 student_version_~i~1) (<= student_version_~x~1 1))} is VALID [2022-04-27 22:25:32,845 INFO L290 TraceCheckUtils]: 34: Hoare triple {28590#(and (<= 3 student_version_~i~1) (<= student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28594#(and (<= student_version_~x~1 2) (<= 3 student_version_~i~1))} is VALID [2022-04-27 22:25:32,845 INFO L290 TraceCheckUtils]: 35: Hoare triple {28594#(and (<= student_version_~x~1 2) (<= 3 student_version_~i~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,845 INFO L290 TraceCheckUtils]: 36: Hoare triple {28446#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {28446#false} is VALID [2022-04-27 22:25:32,845 INFO L290 TraceCheckUtils]: 37: Hoare triple {28446#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,845 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {28446#false} {28445#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {28446#false} is VALID [2022-04-27 22:25:32,845 INFO L290 TraceCheckUtils]: 39: Hoare triple {28446#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {28446#false} is VALID [2022-04-27 22:25:32,845 INFO L272 TraceCheckUtils]: 40: Hoare triple {28446#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {28446#false} is VALID [2022-04-27 22:25:32,845 INFO L290 TraceCheckUtils]: 41: Hoare triple {28446#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {28446#false} is VALID [2022-04-27 22:25:32,845 INFO L290 TraceCheckUtils]: 42: Hoare triple {28446#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,846 INFO L290 TraceCheckUtils]: 43: Hoare triple {28446#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,846 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:25:32,846 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:32,937 INFO L290 TraceCheckUtils]: 43: Hoare triple {28446#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,937 INFO L290 TraceCheckUtils]: 42: Hoare triple {28446#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,937 INFO L290 TraceCheckUtils]: 41: Hoare triple {28446#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {28446#false} is VALID [2022-04-27 22:25:32,938 INFO L272 TraceCheckUtils]: 40: Hoare triple {28446#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {28446#false} is VALID [2022-04-27 22:25:32,938 INFO L290 TraceCheckUtils]: 39: Hoare triple {28446#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {28446#false} is VALID [2022-04-27 22:25:32,938 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {28446#false} {28445#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {28446#false} is VALID [2022-04-27 22:25:32,938 INFO L290 TraceCheckUtils]: 37: Hoare triple {28446#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,938 INFO L290 TraceCheckUtils]: 36: Hoare triple {28446#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {28446#false} is VALID [2022-04-27 22:25:32,938 INFO L290 TraceCheckUtils]: 35: Hoare triple {28486#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {28446#false} is VALID [2022-04-27 22:25:32,938 INFO L290 TraceCheckUtils]: 34: Hoare triple {28485#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28486#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,939 INFO L290 TraceCheckUtils]: 33: Hoare triple {28484#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28485#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,939 INFO L290 TraceCheckUtils]: 32: Hoare triple {28483#(<= 3 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {28484#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:25:32,939 INFO L290 TraceCheckUtils]: 31: Hoare triple {28483#(<= 3 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,939 INFO L290 TraceCheckUtils]: 30: Hoare triple {28483#(<= 3 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,940 INFO L290 TraceCheckUtils]: 29: Hoare triple {28483#(<= 3 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,940 INFO L290 TraceCheckUtils]: 28: Hoare triple {28482#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28483#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:25:32,940 INFO L290 TraceCheckUtils]: 27: Hoare triple {28481#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28482#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 26: Hoare triple {28480#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {28481#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 25: Hoare triple {28445#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {28480#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:25:32,941 INFO L272 TraceCheckUtils]: 24: Hoare triple {28445#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 23: Hoare triple {28445#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {28445#true} is VALID [2022-04-27 22:25:32,941 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {28445#true} {28445#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 21: Hoare triple {28445#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 20: Hoare triple {28445#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {28445#true} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 19: Hoare triple {28445#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 18: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,941 INFO L290 TraceCheckUtils]: 17: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 16: Hoare triple {28445#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 15: Hoare triple {28445#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 14: Hoare triple {28445#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 13: Hoare triple {28445#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 12: Hoare triple {28445#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 11: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 10: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 9: Hoare triple {28445#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 8: Hoare triple {28445#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L272 TraceCheckUtils]: 7: Hoare triple {28445#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 6: Hoare triple {28445#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L290 TraceCheckUtils]: 5: Hoare triple {28445#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L272 TraceCheckUtils]: 4: Hoare triple {28445#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,942 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28445#true} {28445#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,943 INFO L290 TraceCheckUtils]: 2: Hoare triple {28445#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {28445#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {28445#true} is VALID [2022-04-27 22:25:32,943 INFO L272 TraceCheckUtils]: 0: Hoare triple {28445#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28445#true} is VALID [2022-04-27 22:25:32,943 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:25:32,943 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [40157359] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:32,943 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:32,943 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 13 [2022-04-27 22:25:32,943 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1498442230] [2022-04-27 22:25:32,943 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:32,944 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.8461538461538463) internal successors, (37), 12 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 44 [2022-04-27 22:25:32,944 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:32,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.8461538461538463) internal successors, (37), 12 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:25:32,960 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-27 22:25:32,960 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 22:25:32,960 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:32,961 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 22:25:32,961 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=103, Unknown=0, NotChecked=0, Total=156 [2022-04-27 22:25:32,961 INFO L87 Difference]: Start difference. First operand 207 states and 240 transitions. Second operand has 13 states, 13 states have (on average 2.8461538461538463) internal successors, (37), 12 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:25:33,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:33,795 INFO L93 Difference]: Finished difference Result 233 states and 270 transitions. [2022-04-27 22:25:33,795 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 22:25:33,796 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.8461538461538463) internal successors, (37), 12 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 44 [2022-04-27 22:25:33,796 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:33,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.8461538461538463) internal successors, (37), 12 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:25:33,796 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 71 transitions. [2022-04-27 22:25:33,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.8461538461538463) internal successors, (37), 12 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:25:33,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 71 transitions. [2022-04-27 22:25:33,797 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 71 transitions. [2022-04-27 22:25:33,847 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-27 22:25:33,850 INFO L225 Difference]: With dead ends: 233 [2022-04-27 22:25:33,850 INFO L226 Difference]: Without dead ends: 212 [2022-04-27 22:25:33,851 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 90 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=169, Invalid=337, Unknown=0, NotChecked=0, Total=506 [2022-04-27 22:25:33,851 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 51 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 220 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 240 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 220 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:33,851 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [53 Valid, 67 Invalid, 240 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 220 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:25:33,852 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-27 22:25:34,608 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-27 22:25:34,608 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:34,608 INFO L82 GeneralOperation]: Start isEquivalent. First operand 212 states. Second operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:34,608 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:34,627 INFO L87 Difference]: Start difference. First operand 212 states. Second operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:34,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:34,630 INFO L93 Difference]: Finished difference Result 212 states and 245 transitions. [2022-04-27 22:25:34,630 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 245 transitions. [2022-04-27 22:25:34,630 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:34,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:34,630 INFO L74 IsIncluded]: Start isIncluded. First operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) Second operand 212 states. [2022-04-27 22:25:34,631 INFO L87 Difference]: Start difference. First operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) Second operand 212 states. [2022-04-27 22:25:34,633 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:34,633 INFO L93 Difference]: Finished difference Result 212 states and 245 transitions. [2022-04-27 22:25:34,633 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 245 transitions. [2022-04-27 22:25:34,633 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:34,633 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:34,634 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:34,634 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:34,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (19), 11 states have call predecessors, (19), 11 states have call successors, (19) [2022-04-27 22:25:34,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 245 transitions. [2022-04-27 22:25:34,636 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 245 transitions. Word has length 44 [2022-04-27 22:25:34,637 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:34,637 INFO L495 AbstractCegarLoop]: Abstraction has 212 states and 245 transitions. [2022-04-27 22:25:34,637 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.8461538461538463) internal successors, (37), 12 states have internal predecessors, (37), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:25:34,637 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 245 transitions. [2022-04-27 22:25:34,637 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-27 22:25:34,637 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:34,637 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:34,664 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:34,859 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable35 [2022-04-27 22:25:34,859 INFO L420 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:34,859 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:34,860 INFO L85 PathProgramCache]: Analyzing trace with hash 495113378, now seen corresponding path program 27 times [2022-04-27 22:25:34,860 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:34,860 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2067248912] [2022-04-27 22:25:34,860 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:34,860 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:34,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:34,949 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:34,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:34,951 INFO L290 TraceCheckUtils]: 0: Hoare triple {29861#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {29820#true} is VALID [2022-04-27 22:25:34,951 INFO L290 TraceCheckUtils]: 1: Hoare triple {29820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:34,951 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {29820#true} {29820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:34,951 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:34,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:35,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {29820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,138 INFO L290 TraceCheckUtils]: 1: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,138 INFO L290 TraceCheckUtils]: 3: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:35,139 INFO L290 TraceCheckUtils]: 4: Hoare triple {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:35,139 INFO L290 TraceCheckUtils]: 5: Hoare triple {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:35,140 INFO L290 TraceCheckUtils]: 6: Hoare triple {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:25:35,140 INFO L290 TraceCheckUtils]: 7: Hoare triple {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,141 INFO L290 TraceCheckUtils]: 8: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,141 INFO L290 TraceCheckUtils]: 9: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29868#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:25:35,141 INFO L290 TraceCheckUtils]: 10: Hoare triple {29868#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:35,142 INFO L290 TraceCheckUtils]: 11: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:35,142 INFO L290 TraceCheckUtils]: 12: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:35,142 INFO L290 TraceCheckUtils]: 13: Hoare triple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:35,143 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {29820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {29840#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:25:35,143 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:25:35,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:35,398 INFO L290 TraceCheckUtils]: 0: Hoare triple {29820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:35,399 INFO L290 TraceCheckUtils]: 1: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:35,399 INFO L290 TraceCheckUtils]: 2: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:35,400 INFO L290 TraceCheckUtils]: 3: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:35,400 INFO L290 TraceCheckUtils]: 4: Hoare triple {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:35,401 INFO L290 TraceCheckUtils]: 5: Hoare triple {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:35,401 INFO L290 TraceCheckUtils]: 6: Hoare triple {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:25:35,402 INFO L290 TraceCheckUtils]: 7: Hoare triple {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:35,402 INFO L290 TraceCheckUtils]: 8: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:35,402 INFO L290 TraceCheckUtils]: 9: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29877#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:25:35,403 INFO L290 TraceCheckUtils]: 10: Hoare triple {29877#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:35,403 INFO L290 TraceCheckUtils]: 11: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:35,403 INFO L290 TraceCheckUtils]: 12: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:35,404 INFO L290 TraceCheckUtils]: 13: Hoare triple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:35,405 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {29857#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:35,405 INFO L272 TraceCheckUtils]: 0: Hoare triple {29820#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29861#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:35,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {29861#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {29820#true} is VALID [2022-04-27 22:25:35,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {29820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:35,405 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29820#true} {29820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:35,405 INFO L272 TraceCheckUtils]: 4: Hoare triple {29820#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:35,405 INFO L290 TraceCheckUtils]: 5: Hoare triple {29820#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:35,405 INFO L290 TraceCheckUtils]: 6: Hoare triple {29820#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:35,406 INFO L272 TraceCheckUtils]: 7: Hoare triple {29820#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:35,406 INFO L290 TraceCheckUtils]: 8: Hoare triple {29820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,406 INFO L290 TraceCheckUtils]: 9: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,407 INFO L290 TraceCheckUtils]: 10: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,407 INFO L290 TraceCheckUtils]: 11: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:35,408 INFO L290 TraceCheckUtils]: 12: Hoare triple {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:35,408 INFO L290 TraceCheckUtils]: 13: Hoare triple {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:35,408 INFO L290 TraceCheckUtils]: 14: Hoare triple {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:25:35,409 INFO L290 TraceCheckUtils]: 15: Hoare triple {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,409 INFO L290 TraceCheckUtils]: 16: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:35,410 INFO L290 TraceCheckUtils]: 17: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29868#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:25:35,410 INFO L290 TraceCheckUtils]: 18: Hoare triple {29868#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:35,410 INFO L290 TraceCheckUtils]: 19: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:35,411 INFO L290 TraceCheckUtils]: 20: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:35,411 INFO L290 TraceCheckUtils]: 21: Hoare triple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:35,412 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {29820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {29840#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:25:35,412 INFO L290 TraceCheckUtils]: 23: Hoare triple {29840#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:25:35,412 INFO L272 TraceCheckUtils]: 24: Hoare triple {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:35,412 INFO L290 TraceCheckUtils]: 25: Hoare triple {29820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:35,413 INFO L290 TraceCheckUtils]: 26: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:35,413 INFO L290 TraceCheckUtils]: 27: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:35,414 INFO L290 TraceCheckUtils]: 28: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:35,414 INFO L290 TraceCheckUtils]: 29: Hoare triple {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:35,414 INFO L290 TraceCheckUtils]: 30: Hoare triple {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:35,415 INFO L290 TraceCheckUtils]: 31: Hoare triple {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:25:35,415 INFO L290 TraceCheckUtils]: 32: Hoare triple {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:35,416 INFO L290 TraceCheckUtils]: 33: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:35,416 INFO L290 TraceCheckUtils]: 34: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29877#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:25:35,417 INFO L290 TraceCheckUtils]: 35: Hoare triple {29877#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:35,417 INFO L290 TraceCheckUtils]: 36: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:35,417 INFO L290 TraceCheckUtils]: 37: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:35,418 INFO L290 TraceCheckUtils]: 38: Hoare triple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:35,418 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {29857#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:35,419 INFO L290 TraceCheckUtils]: 40: Hoare triple {29857#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {29858#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:35,419 INFO L272 TraceCheckUtils]: 41: Hoare triple {29858#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {29859#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:25:35,420 INFO L290 TraceCheckUtils]: 42: Hoare triple {29859#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {29860#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:25:35,420 INFO L290 TraceCheckUtils]: 43: Hoare triple {29860#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {29821#false} is VALID [2022-04-27 22:25:35,420 INFO L290 TraceCheckUtils]: 44: Hoare triple {29821#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29821#false} is VALID [2022-04-27 22:25:35,420 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:25:35,420 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:35,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2067248912] [2022-04-27 22:25:35,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2067248912] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:35,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [57009623] [2022-04-27 22:25:35,420 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:25:35,421 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:35,422 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:35,422 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:35,465 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-27 22:25:35,499 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 22:25:35,499 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:35,500 INFO L263 TraceCheckSpWp]: Trace formula consists of 218 conjuncts, 47 conjunts are in the unsatisfiable core [2022-04-27 22:25:35,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:35,508 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:36,163 INFO L272 TraceCheckUtils]: 0: Hoare triple {29820#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,163 INFO L290 TraceCheckUtils]: 1: Hoare triple {29820#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {29820#true} is VALID [2022-04-27 22:25:36,163 INFO L290 TraceCheckUtils]: 2: Hoare triple {29820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,163 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29820#true} {29820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,163 INFO L272 TraceCheckUtils]: 4: Hoare triple {29820#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,163 INFO L290 TraceCheckUtils]: 5: Hoare triple {29820#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:36,163 INFO L290 TraceCheckUtils]: 6: Hoare triple {29820#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,163 INFO L272 TraceCheckUtils]: 7: Hoare triple {29820#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:36,164 INFO L290 TraceCheckUtils]: 8: Hoare triple {29820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,164 INFO L290 TraceCheckUtils]: 9: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,164 INFO L290 TraceCheckUtils]: 10: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,165 INFO L290 TraceCheckUtils]: 11: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:36,165 INFO L290 TraceCheckUtils]: 12: Hoare triple {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:36,166 INFO L290 TraceCheckUtils]: 13: Hoare triple {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:36,166 INFO L290 TraceCheckUtils]: 14: Hoare triple {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:25:36,167 INFO L290 TraceCheckUtils]: 15: Hoare triple {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,167 INFO L290 TraceCheckUtils]: 16: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,167 INFO L290 TraceCheckUtils]: 17: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29934#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:25:36,168 INFO L290 TraceCheckUtils]: 18: Hoare triple {29934#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:36,168 INFO L290 TraceCheckUtils]: 19: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:36,168 INFO L290 TraceCheckUtils]: 20: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:36,169 INFO L290 TraceCheckUtils]: 21: Hoare triple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:36,169 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {29820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {29840#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:25:36,170 INFO L290 TraceCheckUtils]: 23: Hoare triple {29840#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:25:36,170 INFO L272 TraceCheckUtils]: 24: Hoare triple {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:36,170 INFO L290 TraceCheckUtils]: 25: Hoare triple {29820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:36,171 INFO L290 TraceCheckUtils]: 26: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:36,171 INFO L290 TraceCheckUtils]: 27: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:36,171 INFO L290 TraceCheckUtils]: 28: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:36,172 INFO L290 TraceCheckUtils]: 29: Hoare triple {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:36,172 INFO L290 TraceCheckUtils]: 30: Hoare triple {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:36,173 INFO L290 TraceCheckUtils]: 31: Hoare triple {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:25:36,173 INFO L290 TraceCheckUtils]: 32: Hoare triple {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:36,173 INFO L290 TraceCheckUtils]: 33: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:36,174 INFO L290 TraceCheckUtils]: 34: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29986#(and (<= student_version_~j~1 5) (= student_version_~y~1 0) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:36,174 INFO L290 TraceCheckUtils]: 35: Hoare triple {29986#(and (<= student_version_~j~1 5) (= student_version_~y~1 0) (<= 5 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:36,175 INFO L290 TraceCheckUtils]: 36: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:36,175 INFO L290 TraceCheckUtils]: 37: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:36,175 INFO L290 TraceCheckUtils]: 38: Hoare triple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:36,176 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {30002#(and (<= 5 |main_#t~ret9|) (<= main_~n_stones1~0 5) (<= |main_#t~ret9| 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:25:36,176 INFO L290 TraceCheckUtils]: 40: Hoare triple {30002#(and (<= 5 |main_#t~ret9|) (<= main_~n_stones1~0 5) (<= |main_#t~ret9| 5) (<= 5 main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {30006#(and (<= main_~n_stones1~0 5) (<= main_~n_stones2~0 5) (<= 5 main_~n_stones1~0) (<= 5 main_~n_stones2~0))} is VALID [2022-04-27 22:25:36,177 INFO L272 TraceCheckUtils]: 41: Hoare triple {30006#(and (<= main_~n_stones1~0 5) (<= main_~n_stones2~0 5) (<= 5 main_~n_stones1~0) (<= 5 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {30010#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:36,177 INFO L290 TraceCheckUtils]: 42: Hoare triple {30010#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {30014#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:36,177 INFO L290 TraceCheckUtils]: 43: Hoare triple {30014#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {29821#false} is VALID [2022-04-27 22:25:36,177 INFO L290 TraceCheckUtils]: 44: Hoare triple {29821#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29821#false} is VALID [2022-04-27 22:25:36,178 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:25:36,178 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:36,556 INFO L290 TraceCheckUtils]: 44: Hoare triple {29821#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29821#false} is VALID [2022-04-27 22:25:36,557 INFO L290 TraceCheckUtils]: 43: Hoare triple {30014#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {29821#false} is VALID [2022-04-27 22:25:36,557 INFO L290 TraceCheckUtils]: 42: Hoare triple {30010#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {30014#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:36,558 INFO L272 TraceCheckUtils]: 41: Hoare triple {29858#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {30010#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:36,558 INFO L290 TraceCheckUtils]: 40: Hoare triple {29857#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {29858#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:36,559 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {29857#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:36,559 INFO L290 TraceCheckUtils]: 38: Hoare triple {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:36,560 INFO L290 TraceCheckUtils]: 37: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {29879#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:25:36,560 INFO L290 TraceCheckUtils]: 36: Hoare triple {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:36,561 INFO L290 TraceCheckUtils]: 35: Hoare triple {29877#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29878#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:25:36,561 INFO L290 TraceCheckUtils]: 34: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {29877#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:25:36,561 INFO L290 TraceCheckUtils]: 33: Hoare triple {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:36,562 INFO L290 TraceCheckUtils]: 32: Hoare triple {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29876#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:25:36,562 INFO L290 TraceCheckUtils]: 31: Hoare triple {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29875#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:25:36,563 INFO L290 TraceCheckUtils]: 30: Hoare triple {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29874#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:36,563 INFO L290 TraceCheckUtils]: 29: Hoare triple {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29873#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:36,564 INFO L290 TraceCheckUtils]: 28: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {29872#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:36,564 INFO L290 TraceCheckUtils]: 27: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:36,565 INFO L290 TraceCheckUtils]: 26: Hoare triple {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:36,565 INFO L290 TraceCheckUtils]: 25: Hoare triple {29820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {29871#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:36,565 INFO L272 TraceCheckUtils]: 24: Hoare triple {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:36,566 INFO L290 TraceCheckUtils]: 23: Hoare triple {29840#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {29841#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:25:36,566 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {29820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {29840#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:25:36,567 INFO L290 TraceCheckUtils]: 21: Hoare triple {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:36,567 INFO L290 TraceCheckUtils]: 20: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {29870#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:25:36,568 INFO L290 TraceCheckUtils]: 19: Hoare triple {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:36,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {29868#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29869#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:25:36,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {29868#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:25:36,569 INFO L290 TraceCheckUtils]: 16: Hoare triple {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,569 INFO L290 TraceCheckUtils]: 15: Hoare triple {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29867#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,570 INFO L290 TraceCheckUtils]: 14: Hoare triple {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29866#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:25:36,570 INFO L290 TraceCheckUtils]: 13: Hoare triple {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29865#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:36,571 INFO L290 TraceCheckUtils]: 12: Hoare triple {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29864#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:36,571 INFO L290 TraceCheckUtils]: 11: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {29863#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:36,572 INFO L290 TraceCheckUtils]: 10: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,572 INFO L290 TraceCheckUtils]: 9: Hoare triple {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,573 INFO L290 TraceCheckUtils]: 8: Hoare triple {29820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {29862#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:36,573 INFO L272 TraceCheckUtils]: 7: Hoare triple {29820#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L290 TraceCheckUtils]: 6: Hoare triple {29820#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L290 TraceCheckUtils]: 5: Hoare triple {29820#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L272 TraceCheckUtils]: 4: Hoare triple {29820#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29820#true} {29820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L290 TraceCheckUtils]: 2: Hoare triple {29820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L290 TraceCheckUtils]: 1: Hoare triple {29820#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L272 TraceCheckUtils]: 0: Hoare triple {29820#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29820#true} is VALID [2022-04-27 22:25:36,573 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:25:36,573 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [57009623] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:36,573 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:36,574 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 26, 26] total 33 [2022-04-27 22:25:36,574 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1119168817] [2022-04-27 22:25:36,574 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:36,575 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 45 [2022-04-27 22:25:36,575 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:36,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:36,612 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-27 22:25:36,612 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-04-27 22:25:36,612 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:36,613 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-04-27 22:25:36,614 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=983, Unknown=0, NotChecked=0, Total=1056 [2022-04-27 22:25:36,614 INFO L87 Difference]: Start difference. First operand 212 states and 245 transitions. Second operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:40,164 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:40,164 INFO L93 Difference]: Finished difference Result 270 states and 312 transitions. [2022-04-27 22:25:40,164 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-27 22:25:40,164 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 45 [2022-04-27 22:25:40,164 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:40,164 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:40,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 142 transitions. [2022-04-27 22:25:40,166 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:40,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 142 transitions. [2022-04-27 22:25:40,167 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 142 transitions. [2022-04-27 22:25:40,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:40,242 INFO L225 Difference]: With dead ends: 270 [2022-04-27 22:25:40,243 INFO L226 Difference]: Without dead ends: 264 [2022-04-27 22:25:40,244 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 84 SyntacticMatches, 5 SemanticMatches, 56 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 457 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=205, Invalid=3101, Unknown=0, NotChecked=0, Total=3306 [2022-04-27 22:25:40,244 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 146 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 2483 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 150 SdHoareTripleChecker+Valid, 193 SdHoareTripleChecker+Invalid, 2523 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 2483 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:40,244 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [150 Valid, 193 Invalid, 2523 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 2483 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-27 22:25:40,245 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 264 states. [2022-04-27 22:25:41,226 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 264 to 228. [2022-04-27 22:25:41,226 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:41,227 INFO L82 GeneralOperation]: Start isEquivalent. First operand 264 states. Second operand has 228 states, 192 states have (on average 1.1875) internal successors, (228), 210 states have internal predecessors, (228), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (22), 12 states have call predecessors, (22), 12 states have call successors, (22) [2022-04-27 22:25:41,227 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand has 228 states, 192 states have (on average 1.1875) internal successors, (228), 210 states have internal predecessors, (228), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (22), 12 states have call predecessors, (22), 12 states have call successors, (22) [2022-04-27 22:25:41,227 INFO L87 Difference]: Start difference. First operand 264 states. Second operand has 228 states, 192 states have (on average 1.1875) internal successors, (228), 210 states have internal predecessors, (228), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (22), 12 states have call predecessors, (22), 12 states have call successors, (22) [2022-04-27 22:25:41,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:41,230 INFO L93 Difference]: Finished difference Result 264 states and 306 transitions. [2022-04-27 22:25:41,231 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 306 transitions. [2022-04-27 22:25:41,231 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:41,231 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:41,231 INFO L74 IsIncluded]: Start isIncluded. First operand has 228 states, 192 states have (on average 1.1875) internal successors, (228), 210 states have internal predecessors, (228), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (22), 12 states have call predecessors, (22), 12 states have call successors, (22) Second operand 264 states. [2022-04-27 22:25:41,231 INFO L87 Difference]: Start difference. First operand has 228 states, 192 states have (on average 1.1875) internal successors, (228), 210 states have internal predecessors, (228), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (22), 12 states have call predecessors, (22), 12 states have call successors, (22) Second operand 264 states. [2022-04-27 22:25:41,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:41,235 INFO L93 Difference]: Finished difference Result 264 states and 306 transitions. [2022-04-27 22:25:41,235 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 306 transitions. [2022-04-27 22:25:41,235 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:41,235 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:41,235 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:41,235 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:41,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 228 states, 192 states have (on average 1.1875) internal successors, (228), 210 states have internal predecessors, (228), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (22), 12 states have call predecessors, (22), 12 states have call successors, (22) [2022-04-27 22:25:41,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 264 transitions. [2022-04-27 22:25:41,239 INFO L78 Accepts]: Start accepts. Automaton has 228 states and 264 transitions. Word has length 45 [2022-04-27 22:25:41,239 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:41,239 INFO L495 AbstractCegarLoop]: Abstraction has 228 states and 264 transitions. [2022-04-27 22:25:41,239 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:41,239 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 264 transitions. [2022-04-27 22:25:41,240 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-27 22:25:41,240 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:41,240 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:41,258 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:41,455 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable36 [2022-04-27 22:25:41,455 INFO L420 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:41,456 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:41,456 INFO L85 PathProgramCache]: Analyzing trace with hash 163503975, now seen corresponding path program 28 times [2022-04-27 22:25:41,456 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:41,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1846874540] [2022-04-27 22:25:41,456 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:41,456 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:41,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:41,530 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:41,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:41,533 INFO L290 TraceCheckUtils]: 0: Hoare triple {31476#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {31435#true} is VALID [2022-04-27 22:25:41,533 INFO L290 TraceCheckUtils]: 1: Hoare triple {31435#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:41,533 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {31435#true} {31435#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:41,533 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:41,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:41,654 INFO L290 TraceCheckUtils]: 0: Hoare triple {31435#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,654 INFO L290 TraceCheckUtils]: 1: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,655 INFO L290 TraceCheckUtils]: 2: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,655 INFO L290 TraceCheckUtils]: 3: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,656 INFO L290 TraceCheckUtils]: 4: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:41,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:41,657 INFO L290 TraceCheckUtils]: 6: Hoare triple {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:41,657 INFO L290 TraceCheckUtils]: 7: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:41,657 INFO L290 TraceCheckUtils]: 8: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31481#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:41,658 INFO L290 TraceCheckUtils]: 9: Hoare triple {31481#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31482#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:25:41,658 INFO L290 TraceCheckUtils]: 10: Hoare triple {31482#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:41,659 INFO L290 TraceCheckUtils]: 11: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:41,659 INFO L290 TraceCheckUtils]: 12: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:41,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:41,660 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {31435#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {31455#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:25:41,660 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:25:41,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:41,824 INFO L290 TraceCheckUtils]: 0: Hoare triple {31435#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,824 INFO L290 TraceCheckUtils]: 1: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,825 INFO L290 TraceCheckUtils]: 2: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,825 INFO L290 TraceCheckUtils]: 3: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,826 INFO L290 TraceCheckUtils]: 4: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:41,826 INFO L290 TraceCheckUtils]: 5: Hoare triple {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:41,827 INFO L290 TraceCheckUtils]: 6: Hoare triple {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:41,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:41,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31489#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:25:41,828 INFO L290 TraceCheckUtils]: 9: Hoare triple {31489#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31490#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:25:41,828 INFO L290 TraceCheckUtils]: 10: Hoare triple {31490#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:41,829 INFO L290 TraceCheckUtils]: 11: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:41,829 INFO L290 TraceCheckUtils]: 12: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:41,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:41,830 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {31472#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:41,831 INFO L272 TraceCheckUtils]: 0: Hoare triple {31435#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31476#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:41,831 INFO L290 TraceCheckUtils]: 1: Hoare triple {31476#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {31435#true} is VALID [2022-04-27 22:25:41,831 INFO L290 TraceCheckUtils]: 2: Hoare triple {31435#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:41,831 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31435#true} {31435#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:41,831 INFO L272 TraceCheckUtils]: 4: Hoare triple {31435#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:41,831 INFO L290 TraceCheckUtils]: 5: Hoare triple {31435#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:41,831 INFO L290 TraceCheckUtils]: 6: Hoare triple {31435#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:41,831 INFO L272 TraceCheckUtils]: 7: Hoare triple {31435#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:41,832 INFO L290 TraceCheckUtils]: 8: Hoare triple {31435#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,832 INFO L290 TraceCheckUtils]: 9: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,832 INFO L290 TraceCheckUtils]: 10: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,833 INFO L290 TraceCheckUtils]: 11: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:41,833 INFO L290 TraceCheckUtils]: 12: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:41,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:41,834 INFO L290 TraceCheckUtils]: 14: Hoare triple {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:41,834 INFO L290 TraceCheckUtils]: 15: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:41,835 INFO L290 TraceCheckUtils]: 16: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31481#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:41,835 INFO L290 TraceCheckUtils]: 17: Hoare triple {31481#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31482#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:25:41,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {31482#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:41,836 INFO L290 TraceCheckUtils]: 19: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:41,837 INFO L290 TraceCheckUtils]: 20: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:41,837 INFO L290 TraceCheckUtils]: 21: Hoare triple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:41,838 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {31435#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {31455#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:25:41,838 INFO L290 TraceCheckUtils]: 23: Hoare triple {31455#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:25:41,838 INFO L272 TraceCheckUtils]: 24: Hoare triple {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:41,838 INFO L290 TraceCheckUtils]: 25: Hoare triple {31435#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,839 INFO L290 TraceCheckUtils]: 26: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,839 INFO L290 TraceCheckUtils]: 27: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,839 INFO L290 TraceCheckUtils]: 28: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:41,840 INFO L290 TraceCheckUtils]: 29: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:41,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:41,841 INFO L290 TraceCheckUtils]: 31: Hoare triple {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:41,841 INFO L290 TraceCheckUtils]: 32: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:41,842 INFO L290 TraceCheckUtils]: 33: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31489#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:25:41,842 INFO L290 TraceCheckUtils]: 34: Hoare triple {31489#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31490#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:25:41,843 INFO L290 TraceCheckUtils]: 35: Hoare triple {31490#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:41,843 INFO L290 TraceCheckUtils]: 36: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:41,843 INFO L290 TraceCheckUtils]: 37: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:41,844 INFO L290 TraceCheckUtils]: 38: Hoare triple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:41,844 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {31472#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:41,845 INFO L290 TraceCheckUtils]: 40: Hoare triple {31472#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {31473#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:41,845 INFO L272 TraceCheckUtils]: 41: Hoare triple {31473#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {31474#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:25:41,846 INFO L290 TraceCheckUtils]: 42: Hoare triple {31474#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {31475#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:25:41,846 INFO L290 TraceCheckUtils]: 43: Hoare triple {31475#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {31436#false} is VALID [2022-04-27 22:25:41,846 INFO L290 TraceCheckUtils]: 44: Hoare triple {31436#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31436#false} is VALID [2022-04-27 22:25:41,846 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:25:41,846 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:41,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1846874540] [2022-04-27 22:25:41,847 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1846874540] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:41,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [637341375] [2022-04-27 22:25:41,847 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:25:41,847 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:41,847 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:41,848 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:41,849 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-27 22:25:41,906 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:25:41,907 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:41,907 INFO L263 TraceCheckSpWp]: Trace formula consists of 218 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-27 22:25:41,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:41,916 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:42,510 INFO L272 TraceCheckUtils]: 0: Hoare triple {31435#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,510 INFO L290 TraceCheckUtils]: 1: Hoare triple {31435#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {31435#true} is VALID [2022-04-27 22:25:42,510 INFO L290 TraceCheckUtils]: 2: Hoare triple {31435#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,511 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31435#true} {31435#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,511 INFO L272 TraceCheckUtils]: 4: Hoare triple {31435#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,511 INFO L290 TraceCheckUtils]: 5: Hoare triple {31435#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:42,511 INFO L290 TraceCheckUtils]: 6: Hoare triple {31435#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,511 INFO L272 TraceCheckUtils]: 7: Hoare triple {31435#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:42,511 INFO L290 TraceCheckUtils]: 8: Hoare triple {31435#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,512 INFO L290 TraceCheckUtils]: 10: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,512 INFO L290 TraceCheckUtils]: 11: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,513 INFO L290 TraceCheckUtils]: 12: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:42,513 INFO L290 TraceCheckUtils]: 13: Hoare triple {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:42,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:42,514 INFO L290 TraceCheckUtils]: 15: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:42,514 INFO L290 TraceCheckUtils]: 16: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31544#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:42,514 INFO L290 TraceCheckUtils]: 17: Hoare triple {31544#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31548#(and (<= 3 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:42,515 INFO L290 TraceCheckUtils]: 18: Hoare triple {31548#(and (<= 3 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:42,515 INFO L290 TraceCheckUtils]: 19: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:42,515 INFO L290 TraceCheckUtils]: 20: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:42,516 INFO L290 TraceCheckUtils]: 21: Hoare triple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:42,516 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {31435#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {31455#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:25:42,516 INFO L290 TraceCheckUtils]: 23: Hoare triple {31455#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:25:42,517 INFO L272 TraceCheckUtils]: 24: Hoare triple {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:42,517 INFO L290 TraceCheckUtils]: 25: Hoare triple {31435#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,517 INFO L290 TraceCheckUtils]: 26: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,517 INFO L290 TraceCheckUtils]: 27: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,518 INFO L290 TraceCheckUtils]: 28: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,518 INFO L290 TraceCheckUtils]: 29: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:42,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:42,519 INFO L290 TraceCheckUtils]: 31: Hoare triple {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:42,519 INFO L290 TraceCheckUtils]: 32: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:42,520 INFO L290 TraceCheckUtils]: 33: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31597#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:42,520 INFO L290 TraceCheckUtils]: 34: Hoare triple {31597#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31601#(and (<= student_version_~j~1 3) (= student_version_~j~1 student_version_~y~1) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:42,521 INFO L290 TraceCheckUtils]: 35: Hoare triple {31601#(and (<= student_version_~j~1 3) (= student_version_~j~1 student_version_~y~1) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:42,521 INFO L290 TraceCheckUtils]: 36: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:42,521 INFO L290 TraceCheckUtils]: 37: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:42,521 INFO L290 TraceCheckUtils]: 38: Hoare triple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:42,522 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {31617#(and (<= 6 |main_#t~ret9|) (<= 6 main_~n_stones1~0) (<= |main_#t~ret9| 6) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:25:42,522 INFO L290 TraceCheckUtils]: 40: Hoare triple {31617#(and (<= 6 |main_#t~ret9|) (<= 6 main_~n_stones1~0) (<= |main_#t~ret9| 6) (<= main_~n_stones1~0 6))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {31621#(and (<= main_~n_stones2~0 6) (<= 6 main_~n_stones2~0) (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:25:42,523 INFO L272 TraceCheckUtils]: 41: Hoare triple {31621#(and (<= main_~n_stones2~0 6) (<= 6 main_~n_stones2~0) (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {31625#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:42,523 INFO L290 TraceCheckUtils]: 42: Hoare triple {31625#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {31629#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:42,523 INFO L290 TraceCheckUtils]: 43: Hoare triple {31629#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {31436#false} is VALID [2022-04-27 22:25:42,523 INFO L290 TraceCheckUtils]: 44: Hoare triple {31436#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31436#false} is VALID [2022-04-27 22:25:42,523 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:25:42,524 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:42,826 INFO L290 TraceCheckUtils]: 44: Hoare triple {31436#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31436#false} is VALID [2022-04-27 22:25:42,826 INFO L290 TraceCheckUtils]: 43: Hoare triple {31629#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {31436#false} is VALID [2022-04-27 22:25:42,827 INFO L290 TraceCheckUtils]: 42: Hoare triple {31625#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {31629#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:42,827 INFO L272 TraceCheckUtils]: 41: Hoare triple {31473#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {31625#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:42,828 INFO L290 TraceCheckUtils]: 40: Hoare triple {31472#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {31473#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:42,828 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {31472#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:42,829 INFO L290 TraceCheckUtils]: 38: Hoare triple {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:42,829 INFO L290 TraceCheckUtils]: 37: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {31492#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:25:42,829 INFO L290 TraceCheckUtils]: 36: Hoare triple {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:42,830 INFO L290 TraceCheckUtils]: 35: Hoare triple {31490#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31491#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:25:42,830 INFO L290 TraceCheckUtils]: 34: Hoare triple {31489#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31490#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:25:42,830 INFO L290 TraceCheckUtils]: 33: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {31489#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:25:42,831 INFO L290 TraceCheckUtils]: 32: Hoare triple {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:42,831 INFO L290 TraceCheckUtils]: 31: Hoare triple {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31488#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:25:42,831 INFO L290 TraceCheckUtils]: 30: Hoare triple {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31487#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:25:42,832 INFO L290 TraceCheckUtils]: 29: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {31486#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:42,832 INFO L290 TraceCheckUtils]: 28: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,832 INFO L290 TraceCheckUtils]: 27: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,833 INFO L290 TraceCheckUtils]: 26: Hoare triple {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,833 INFO L290 TraceCheckUtils]: 25: Hoare triple {31435#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {31485#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:42,833 INFO L272 TraceCheckUtils]: 24: Hoare triple {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:42,833 INFO L290 TraceCheckUtils]: 23: Hoare triple {31455#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {31456#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:25:42,834 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {31435#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {31455#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:25:42,834 INFO L290 TraceCheckUtils]: 21: Hoare triple {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:42,834 INFO L290 TraceCheckUtils]: 20: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {31484#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:25:42,835 INFO L290 TraceCheckUtils]: 19: Hoare triple {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:42,835 INFO L290 TraceCheckUtils]: 18: Hoare triple {31482#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31483#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:25:42,836 INFO L290 TraceCheckUtils]: 17: Hoare triple {31481#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31482#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:25:42,836 INFO L290 TraceCheckUtils]: 16: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {31481#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:42,836 INFO L290 TraceCheckUtils]: 15: Hoare triple {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:42,837 INFO L290 TraceCheckUtils]: 14: Hoare triple {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31480#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:25:42,837 INFO L290 TraceCheckUtils]: 13: Hoare triple {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31479#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:25:42,837 INFO L290 TraceCheckUtils]: 12: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {31478#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:42,838 INFO L290 TraceCheckUtils]: 11: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,838 INFO L290 TraceCheckUtils]: 10: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,838 INFO L290 TraceCheckUtils]: 9: Hoare triple {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,839 INFO L290 TraceCheckUtils]: 8: Hoare triple {31435#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {31477#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:42,839 INFO L272 TraceCheckUtils]: 7: Hoare triple {31435#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L290 TraceCheckUtils]: 6: Hoare triple {31435#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L290 TraceCheckUtils]: 5: Hoare triple {31435#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L272 TraceCheckUtils]: 4: Hoare triple {31435#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31435#true} {31435#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {31435#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {31435#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L272 TraceCheckUtils]: 0: Hoare triple {31435#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31435#true} is VALID [2022-04-27 22:25:42,839 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:25:42,839 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [637341375] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:42,839 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:42,840 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 24, 24] total 33 [2022-04-27 22:25:42,840 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1656370239] [2022-04-27 22:25:42,840 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:42,840 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 45 [2022-04-27 22:25:42,840 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:42,840 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:42,880 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-27 22:25:42,881 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-04-27 22:25:42,881 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:42,881 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-04-27 22:25:42,881 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=979, Unknown=0, NotChecked=0, Total=1056 [2022-04-27 22:25:42,881 INFO L87 Difference]: Start difference. First operand 228 states and 264 transitions. Second operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:45,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:45,998 INFO L93 Difference]: Finished difference Result 234 states and 269 transitions. [2022-04-27 22:25:45,998 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 22:25:45,998 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 45 [2022-04-27 22:25:45,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:45,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:45,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 108 transitions. [2022-04-27 22:25:45,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:46,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 108 transitions. [2022-04-27 22:25:46,000 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 108 transitions. [2022-04-27 22:25:46,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:46,065 INFO L225 Difference]: With dead ends: 234 [2022-04-27 22:25:46,065 INFO L226 Difference]: Without dead ends: 212 [2022-04-27 22:25:46,067 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 141 GetRequests, 78 SyntacticMatches, 9 SemanticMatches, 54 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 476 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=207, Invalid=2873, Unknown=0, NotChecked=0, Total=3080 [2022-04-27 22:25:46,067 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 91 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 1828 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 93 SdHoareTripleChecker+Valid, 171 SdHoareTripleChecker+Invalid, 1856 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 1828 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:46,067 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [93 Valid, 171 Invalid, 1856 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 1828 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-27 22:25:46,068 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-27 22:25:46,863 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-27 22:25:46,864 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:46,864 INFO L82 GeneralOperation]: Start isEquivalent. First operand 212 states. Second operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (20), 11 states have call predecessors, (20), 11 states have call successors, (20) [2022-04-27 22:25:46,864 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (20), 11 states have call predecessors, (20), 11 states have call successors, (20) [2022-04-27 22:25:46,865 INFO L87 Difference]: Start difference. First operand 212 states. Second operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (20), 11 states have call predecessors, (20), 11 states have call successors, (20) [2022-04-27 22:25:46,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:46,868 INFO L93 Difference]: Finished difference Result 212 states and 246 transitions. [2022-04-27 22:25:46,868 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 246 transitions. [2022-04-27 22:25:46,869 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:46,869 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:46,869 INFO L74 IsIncluded]: Start isIncluded. First operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (20), 11 states have call predecessors, (20), 11 states have call successors, (20) Second operand 212 states. [2022-04-27 22:25:46,869 INFO L87 Difference]: Start difference. First operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (20), 11 states have call predecessors, (20), 11 states have call successors, (20) Second operand 212 states. [2022-04-27 22:25:46,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:46,873 INFO L93 Difference]: Finished difference Result 212 states and 246 transitions. [2022-04-27 22:25:46,873 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 246 transitions. [2022-04-27 22:25:46,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:46,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:46,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:46,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:46,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212 states, 179 states have (on average 1.1899441340782122) internal successors, (213), 195 states have internal predecessors, (213), 13 states have call successors, (13), 5 states have call predecessors, (13), 19 states have return successors, (20), 11 states have call predecessors, (20), 11 states have call successors, (20) [2022-04-27 22:25:46,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 246 transitions. [2022-04-27 22:25:46,878 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 246 transitions. Word has length 45 [2022-04-27 22:25:46,879 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:46,879 INFO L495 AbstractCegarLoop]: Abstraction has 212 states and 246 transitions. [2022-04-27 22:25:46,879 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:46,879 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 246 transitions. [2022-04-27 22:25:46,880 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-27 22:25:46,880 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:46,880 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 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, 1] [2022-04-27 22:25:46,913 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:47,103 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable37,29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:47,103 INFO L420 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:47,104 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:47,104 INFO L85 PathProgramCache]: Analyzing trace with hash -1863488446, now seen corresponding path program 29 times [2022-04-27 22:25:47,104 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:47,104 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [143464167] [2022-04-27 22:25:47,104 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:47,104 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:47,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:47,197 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:47,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:47,200 INFO L290 TraceCheckUtils]: 0: Hoare triple {32909#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32868#true} is VALID [2022-04-27 22:25:47,200 INFO L290 TraceCheckUtils]: 1: Hoare triple {32868#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:47,201 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {32868#true} {32868#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:47,201 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:47,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:47,332 INFO L290 TraceCheckUtils]: 0: Hoare triple {32868#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,333 INFO L290 TraceCheckUtils]: 3: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,334 INFO L290 TraceCheckUtils]: 4: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,335 INFO L290 TraceCheckUtils]: 5: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:47,335 INFO L290 TraceCheckUtils]: 6: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:47,335 INFO L290 TraceCheckUtils]: 7: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32912#(and (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 3))} is VALID [2022-04-27 22:25:47,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {32912#(and (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32913#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 3) (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:47,337 INFO L290 TraceCheckUtils]: 9: Hoare triple {32913#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 3) (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32914#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} is VALID [2022-04-27 22:25:47,337 INFO L290 TraceCheckUtils]: 10: Hoare triple {32914#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:47,338 INFO L290 TraceCheckUtils]: 11: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:47,338 INFO L290 TraceCheckUtils]: 12: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:47,339 INFO L290 TraceCheckUtils]: 13: Hoare triple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:47,339 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {32868#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {32888#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:25:47,340 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:25:47,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:47,518 INFO L290 TraceCheckUtils]: 0: Hoare triple {32868#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,519 INFO L290 TraceCheckUtils]: 1: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,519 INFO L290 TraceCheckUtils]: 2: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,520 INFO L290 TraceCheckUtils]: 3: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,520 INFO L290 TraceCheckUtils]: 4: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,520 INFO L290 TraceCheckUtils]: 5: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:47,521 INFO L290 TraceCheckUtils]: 6: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:47,521 INFO L290 TraceCheckUtils]: 7: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32919#(and (<= 3 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 3))} is VALID [2022-04-27 22:25:47,522 INFO L290 TraceCheckUtils]: 8: Hoare triple {32919#(and (<= 3 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32920#(and (<= 3 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 3))} is VALID [2022-04-27 22:25:47,522 INFO L290 TraceCheckUtils]: 9: Hoare triple {32920#(and (<= 3 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32921#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} is VALID [2022-04-27 22:25:47,523 INFO L290 TraceCheckUtils]: 10: Hoare triple {32921#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:47,523 INFO L290 TraceCheckUtils]: 11: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:47,524 INFO L290 TraceCheckUtils]: 12: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:47,524 INFO L290 TraceCheckUtils]: 13: Hoare triple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:47,525 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {32905#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:47,525 INFO L272 TraceCheckUtils]: 0: Hoare triple {32868#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32909#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:47,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {32909#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32868#true} is VALID [2022-04-27 22:25:47,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {32868#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:47,526 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32868#true} {32868#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:47,526 INFO L272 TraceCheckUtils]: 4: Hoare triple {32868#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:47,526 INFO L290 TraceCheckUtils]: 5: Hoare triple {32868#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:47,526 INFO L290 TraceCheckUtils]: 6: Hoare triple {32868#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:47,526 INFO L272 TraceCheckUtils]: 7: Hoare triple {32868#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:47,527 INFO L290 TraceCheckUtils]: 8: Hoare triple {32868#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,527 INFO L290 TraceCheckUtils]: 9: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,527 INFO L290 TraceCheckUtils]: 10: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,528 INFO L290 TraceCheckUtils]: 11: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,528 INFO L290 TraceCheckUtils]: 12: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:47,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:47,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:47,529 INFO L290 TraceCheckUtils]: 15: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32912#(and (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 3))} is VALID [2022-04-27 22:25:47,530 INFO L290 TraceCheckUtils]: 16: Hoare triple {32912#(and (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32913#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 3) (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:47,530 INFO L290 TraceCheckUtils]: 17: Hoare triple {32913#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 3) (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32914#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} is VALID [2022-04-27 22:25:47,531 INFO L290 TraceCheckUtils]: 18: Hoare triple {32914#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:47,531 INFO L290 TraceCheckUtils]: 19: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:47,532 INFO L290 TraceCheckUtils]: 20: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:47,532 INFO L290 TraceCheckUtils]: 21: Hoare triple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:47,533 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {32868#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {32888#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:25:47,533 INFO L290 TraceCheckUtils]: 23: Hoare triple {32888#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} is VALID [2022-04-27 22:25:47,533 INFO L272 TraceCheckUtils]: 24: Hoare triple {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:47,534 INFO L290 TraceCheckUtils]: 25: Hoare triple {32868#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,534 INFO L290 TraceCheckUtils]: 26: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,534 INFO L290 TraceCheckUtils]: 27: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,535 INFO L290 TraceCheckUtils]: 28: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,535 INFO L290 TraceCheckUtils]: 29: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:47,536 INFO L290 TraceCheckUtils]: 30: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:47,536 INFO L290 TraceCheckUtils]: 31: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:47,536 INFO L290 TraceCheckUtils]: 32: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32919#(and (<= 3 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 3))} is VALID [2022-04-27 22:25:47,537 INFO L290 TraceCheckUtils]: 33: Hoare triple {32919#(and (<= 3 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32920#(and (<= 3 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 3))} is VALID [2022-04-27 22:25:47,538 INFO L290 TraceCheckUtils]: 34: Hoare triple {32920#(and (<= 3 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32921#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} is VALID [2022-04-27 22:25:47,538 INFO L290 TraceCheckUtils]: 35: Hoare triple {32921#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:47,538 INFO L290 TraceCheckUtils]: 36: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:47,539 INFO L290 TraceCheckUtils]: 37: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:47,539 INFO L290 TraceCheckUtils]: 38: Hoare triple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:47,540 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {32905#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:47,541 INFO L290 TraceCheckUtils]: 40: Hoare triple {32905#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {32906#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:47,541 INFO L272 TraceCheckUtils]: 41: Hoare triple {32906#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {32907#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:25:47,541 INFO L290 TraceCheckUtils]: 42: Hoare triple {32907#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {32908#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:25:47,542 INFO L290 TraceCheckUtils]: 43: Hoare triple {32908#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {32869#false} is VALID [2022-04-27 22:25:47,543 INFO L290 TraceCheckUtils]: 44: Hoare triple {32869#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32869#false} is VALID [2022-04-27 22:25:47,543 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:25:47,543 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:47,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [143464167] [2022-04-27 22:25:47,543 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [143464167] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:47,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1353378250] [2022-04-27 22:25:47,543 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:25:47,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:47,544 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:47,560 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:47,592 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-27 22:25:47,637 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2022-04-27 22:25:47,638 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:47,639 INFO L263 TraceCheckSpWp]: Trace formula consists of 218 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-27 22:25:47,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:47,646 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:48,319 INFO L272 TraceCheckUtils]: 0: Hoare triple {32868#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,319 INFO L290 TraceCheckUtils]: 1: Hoare triple {32868#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32868#true} is VALID [2022-04-27 22:25:48,319 INFO L290 TraceCheckUtils]: 2: Hoare triple {32868#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,319 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32868#true} {32868#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,319 INFO L272 TraceCheckUtils]: 4: Hoare triple {32868#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,319 INFO L290 TraceCheckUtils]: 5: Hoare triple {32868#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:48,319 INFO L290 TraceCheckUtils]: 6: Hoare triple {32868#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,319 INFO L272 TraceCheckUtils]: 7: Hoare triple {32868#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:48,320 INFO L290 TraceCheckUtils]: 8: Hoare triple {32868#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,320 INFO L290 TraceCheckUtils]: 9: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,321 INFO L290 TraceCheckUtils]: 10: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,321 INFO L290 TraceCheckUtils]: 11: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,321 INFO L290 TraceCheckUtils]: 12: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,322 INFO L290 TraceCheckUtils]: 13: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:48,322 INFO L290 TraceCheckUtils]: 14: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:48,323 INFO L290 TraceCheckUtils]: 15: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32972#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:48,323 INFO L290 TraceCheckUtils]: 16: Hoare triple {32972#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32976#(and (<= 1 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:48,324 INFO L290 TraceCheckUtils]: 17: Hoare triple {32976#(and (<= 1 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32980#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:48,324 INFO L290 TraceCheckUtils]: 18: Hoare triple {32980#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:48,324 INFO L290 TraceCheckUtils]: 19: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:48,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:48,325 INFO L290 TraceCheckUtils]: 21: Hoare triple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:48,326 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {32868#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {32888#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:25:48,326 INFO L290 TraceCheckUtils]: 23: Hoare triple {32888#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} is VALID [2022-04-27 22:25:48,326 INFO L272 TraceCheckUtils]: 24: Hoare triple {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:48,327 INFO L290 TraceCheckUtils]: 25: Hoare triple {32868#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,327 INFO L290 TraceCheckUtils]: 26: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,327 INFO L290 TraceCheckUtils]: 27: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,328 INFO L290 TraceCheckUtils]: 28: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,328 INFO L290 TraceCheckUtils]: 29: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,329 INFO L290 TraceCheckUtils]: 30: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:48,329 INFO L290 TraceCheckUtils]: 31: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:48,329 INFO L290 TraceCheckUtils]: 32: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {33026#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:48,330 INFO L290 TraceCheckUtils]: 33: Hoare triple {33026#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {33030#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:25:48,330 INFO L290 TraceCheckUtils]: 34: Hoare triple {33030#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {33034#(and (<= student_version_~j~1 1) (= (+ student_version_~y~1 (* (- 2) student_version_~j~1)) 0) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:48,331 INFO L290 TraceCheckUtils]: 35: Hoare triple {33034#(and (<= student_version_~j~1 1) (= (+ student_version_~y~1 (* (- 2) student_version_~j~1)) 0) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:48,331 INFO L290 TraceCheckUtils]: 36: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:48,332 INFO L290 TraceCheckUtils]: 37: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:48,332 INFO L290 TraceCheckUtils]: 38: Hoare triple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:48,333 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {33050#(and (<= 3 main_~n_stones1~0) (<= |main_#t~ret9| 3) (<= main_~n_stones1~0 3) (<= 3 |main_#t~ret9|))} is VALID [2022-04-27 22:25:48,333 INFO L290 TraceCheckUtils]: 40: Hoare triple {33050#(and (<= 3 main_~n_stones1~0) (<= |main_#t~ret9| 3) (<= main_~n_stones1~0 3) (<= 3 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {33054#(and (<= main_~n_stones2~0 3) (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3) (<= 3 main_~n_stones2~0))} is VALID [2022-04-27 22:25:48,334 INFO L272 TraceCheckUtils]: 41: Hoare triple {33054#(and (<= main_~n_stones2~0 3) (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3) (<= 3 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {33058#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:48,334 INFO L290 TraceCheckUtils]: 42: Hoare triple {33058#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {33062#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:48,334 INFO L290 TraceCheckUtils]: 43: Hoare triple {33062#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {32869#false} is VALID [2022-04-27 22:25:48,335 INFO L290 TraceCheckUtils]: 44: Hoare triple {32869#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32869#false} is VALID [2022-04-27 22:25:48,335 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:25:48,335 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:48,747 INFO L290 TraceCheckUtils]: 44: Hoare triple {32869#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32869#false} is VALID [2022-04-27 22:25:48,748 INFO L290 TraceCheckUtils]: 43: Hoare triple {33062#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {32869#false} is VALID [2022-04-27 22:25:48,748 INFO L290 TraceCheckUtils]: 42: Hoare triple {33058#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {33062#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:25:48,749 INFO L272 TraceCheckUtils]: 41: Hoare triple {32906#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {33058#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:25:48,749 INFO L290 TraceCheckUtils]: 40: Hoare triple {32905#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {32906#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:25:48,750 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {32905#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:25:48,750 INFO L290 TraceCheckUtils]: 38: Hoare triple {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:48,750 INFO L290 TraceCheckUtils]: 37: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {32923#(and (<= 3 |student_version_#res|) (<= |student_version_#res| 3))} is VALID [2022-04-27 22:25:48,751 INFO L290 TraceCheckUtils]: 36: Hoare triple {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:48,751 INFO L290 TraceCheckUtils]: 35: Hoare triple {32921#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32922#(and (<= 3 student_version_~y~1) (<= student_version_~y~1 3))} is VALID [2022-04-27 22:25:48,752 INFO L290 TraceCheckUtils]: 34: Hoare triple {32920#(and (<= 3 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32921#(and (<= 3 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 3))} is VALID [2022-04-27 22:25:48,752 INFO L290 TraceCheckUtils]: 33: Hoare triple {32919#(and (<= 3 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32920#(and (<= 3 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 3))} is VALID [2022-04-27 22:25:48,752 INFO L290 TraceCheckUtils]: 32: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {32919#(and (<= 3 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 3))} is VALID [2022-04-27 22:25:48,753 INFO L290 TraceCheckUtils]: 31: Hoare triple {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:48,753 INFO L290 TraceCheckUtils]: 30: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {32918#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:25:48,753 INFO L290 TraceCheckUtils]: 29: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,754 INFO L290 TraceCheckUtils]: 28: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,754 INFO L290 TraceCheckUtils]: 27: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,755 INFO L290 TraceCheckUtils]: 25: Hoare triple {32868#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {32917#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:25:48,755 INFO L272 TraceCheckUtils]: 24: Hoare triple {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:48,755 INFO L290 TraceCheckUtils]: 23: Hoare triple {32888#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {32889#(and (<= 3 main_~n_stones1~0) (<= main_~n_stones1~0 3))} is VALID [2022-04-27 22:25:48,756 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} {32868#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {32888#(and (<= |main_#t~ret8| 3) (<= 3 |main_#t~ret8|))} is VALID [2022-04-27 22:25:48,756 INFO L290 TraceCheckUtils]: 21: Hoare triple {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:48,756 INFO L290 TraceCheckUtils]: 20: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {32916#(and (<= |correct_version_#res| 3) (<= 3 |correct_version_#res|))} is VALID [2022-04-27 22:25:48,756 INFO L290 TraceCheckUtils]: 19: Hoare triple {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:48,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {32914#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32915#(and (<= 3 correct_version_~y~0) (<= correct_version_~y~0 3))} is VALID [2022-04-27 22:25:48,757 INFO L290 TraceCheckUtils]: 17: Hoare triple {32913#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 3) (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32914#(and (<= 3 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 3))} is VALID [2022-04-27 22:25:48,757 INFO L290 TraceCheckUtils]: 16: Hoare triple {32912#(and (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32913#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 3) (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:25:48,758 INFO L290 TraceCheckUtils]: 15: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {32912#(and (<= 3 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 3))} is VALID [2022-04-27 22:25:48,758 INFO L290 TraceCheckUtils]: 14: Hoare triple {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:48,758 INFO L290 TraceCheckUtils]: 13: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {32911#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:25:48,759 INFO L290 TraceCheckUtils]: 12: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,759 INFO L290 TraceCheckUtils]: 11: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,759 INFO L290 TraceCheckUtils]: 10: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,759 INFO L290 TraceCheckUtils]: 9: Hoare triple {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,760 INFO L290 TraceCheckUtils]: 8: Hoare triple {32868#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {32910#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:25:48,760 INFO L272 TraceCheckUtils]: 7: Hoare triple {32868#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:48,760 INFO L290 TraceCheckUtils]: 6: Hoare triple {32868#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,760 INFO L290 TraceCheckUtils]: 5: Hoare triple {32868#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {32868#true} is VALID [2022-04-27 22:25:48,760 INFO L272 TraceCheckUtils]: 4: Hoare triple {32868#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,760 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32868#true} {32868#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,760 INFO L290 TraceCheckUtils]: 2: Hoare triple {32868#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,760 INFO L290 TraceCheckUtils]: 1: Hoare triple {32868#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32868#true} is VALID [2022-04-27 22:25:48,760 INFO L272 TraceCheckUtils]: 0: Hoare triple {32868#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32868#true} is VALID [2022-04-27 22:25:48,761 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:25:48,761 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1353378250] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:48,761 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:48,761 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 22, 22] total 33 [2022-04-27 22:25:48,761 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1273315290] [2022-04-27 22:25:48,761 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:48,761 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 45 [2022-04-27 22:25:48,762 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:48,762 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:48,792 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-27 22:25:48,792 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-04-27 22:25:48,793 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:48,793 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-04-27 22:25:48,793 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=975, Unknown=0, NotChecked=0, Total=1056 [2022-04-27 22:25:48,793 INFO L87 Difference]: Start difference. First operand 212 states and 246 transitions. Second operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:51,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:51,799 INFO L93 Difference]: Finished difference Result 230 states and 267 transitions. [2022-04-27 22:25:51,799 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-27 22:25:51,799 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 45 [2022-04-27 22:25:51,800 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:25:51,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:51,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 82 transitions. [2022-04-27 22:25:51,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:51,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 82 transitions. [2022-04-27 22:25:51,801 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 82 transitions. [2022-04-27 22:25:51,864 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:51,868 INFO L225 Difference]: With dead ends: 230 [2022-04-27 22:25:51,868 INFO L226 Difference]: Without dead ends: 224 [2022-04-27 22:25:51,869 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 76 SyntacticMatches, 9 SemanticMatches, 52 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 481 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=209, Invalid=2653, Unknown=0, NotChecked=0, Total=2862 [2022-04-27 22:25:51,869 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 56 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 1268 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 1298 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 1268 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:25:51,869 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 161 Invalid, 1298 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 1268 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 22:25:51,870 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-27 22:25:52,548 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 222. [2022-04-27 22:25:52,548 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:25:52,548 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 222 states, 186 states have (on average 1.1935483870967742) internal successors, (222), 204 states have internal predecessors, (222), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (23), 12 states have call predecessors, (23), 12 states have call successors, (23) [2022-04-27 22:25:52,549 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 222 states, 186 states have (on average 1.1935483870967742) internal successors, (222), 204 states have internal predecessors, (222), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (23), 12 states have call predecessors, (23), 12 states have call successors, (23) [2022-04-27 22:25:52,549 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 222 states, 186 states have (on average 1.1935483870967742) internal successors, (222), 204 states have internal predecessors, (222), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (23), 12 states have call predecessors, (23), 12 states have call successors, (23) [2022-04-27 22:25:52,552 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:52,552 INFO L93 Difference]: Finished difference Result 224 states and 261 transitions. [2022-04-27 22:25:52,552 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 261 transitions. [2022-04-27 22:25:52,552 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:52,552 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:52,552 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 186 states have (on average 1.1935483870967742) internal successors, (222), 204 states have internal predecessors, (222), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (23), 12 states have call predecessors, (23), 12 states have call successors, (23) Second operand 224 states. [2022-04-27 22:25:52,553 INFO L87 Difference]: Start difference. First operand has 222 states, 186 states have (on average 1.1935483870967742) internal successors, (222), 204 states have internal predecessors, (222), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (23), 12 states have call predecessors, (23), 12 states have call successors, (23) Second operand 224 states. [2022-04-27 22:25:52,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:25:52,557 INFO L93 Difference]: Finished difference Result 224 states and 261 transitions. [2022-04-27 22:25:52,557 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 261 transitions. [2022-04-27 22:25:52,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:25:52,558 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:25:52,558 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:25:52,558 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:25:52,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 186 states have (on average 1.1935483870967742) internal successors, (222), 204 states have internal predecessors, (222), 14 states have call successors, (14), 5 states have call predecessors, (14), 21 states have return successors, (23), 12 states have call predecessors, (23), 12 states have call successors, (23) [2022-04-27 22:25:52,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 259 transitions. [2022-04-27 22:25:52,562 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 259 transitions. Word has length 45 [2022-04-27 22:25:52,562 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:25:52,562 INFO L495 AbstractCegarLoop]: Abstraction has 222 states and 259 transitions. [2022-04-27 22:25:52,562 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 30 states have (on average 1.5) internal successors, (45), 27 states have internal predecessors, (45), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:25:52,562 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 259 transitions. [2022-04-27 22:25:52,563 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-27 22:25:52,563 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:25:52,563 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:25:52,581 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-27 22:25:52,779 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-27 22:25:52,779 INFO L420 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:25:52,779 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:25:52,779 INFO L85 PathProgramCache]: Analyzing trace with hash 38019997, now seen corresponding path program 30 times [2022-04-27 22:25:52,779 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:25:52,779 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [901418128] [2022-04-27 22:25:52,780 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:25:52,780 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:25:52,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:52,804 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:25:52,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:52,805 INFO L290 TraceCheckUtils]: 0: Hoare triple {34364#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {34327#true} is VALID [2022-04-27 22:25:52,806 INFO L290 TraceCheckUtils]: 1: Hoare triple {34327#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:52,806 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {34327#true} {34327#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:52,806 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:25:52,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:52,863 INFO L290 TraceCheckUtils]: 0: Hoare triple {34327#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:52,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:52,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:52,864 INFO L290 TraceCheckUtils]: 3: Hoare triple {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34366#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:25:52,864 INFO L290 TraceCheckUtils]: 4: Hoare triple {34366#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34367#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:52,865 INFO L290 TraceCheckUtils]: 5: Hoare triple {34367#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34368#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:52,865 INFO L290 TraceCheckUtils]: 6: Hoare triple {34368#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34369#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:25:52,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {34369#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34370#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 |correct_version_#in~a|)))} is VALID [2022-04-27 22:25:52,866 INFO L290 TraceCheckUtils]: 8: Hoare triple {34370#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:52,866 INFO L290 TraceCheckUtils]: 9: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:52,866 INFO L290 TraceCheckUtils]: 10: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:52,867 INFO L290 TraceCheckUtils]: 11: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:52,875 INFO L290 TraceCheckUtils]: 12: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:52,876 INFO L290 TraceCheckUtils]: 13: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:52,877 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} {34327#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {34347#(<= main_~m~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:25:52,877 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:25:52,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:53,026 INFO L290 TraceCheckUtils]: 0: Hoare triple {34327#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,027 INFO L290 TraceCheckUtils]: 3: Hoare triple {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34373#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:25:53,028 INFO L290 TraceCheckUtils]: 4: Hoare triple {34373#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34374#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,028 INFO L290 TraceCheckUtils]: 5: Hoare triple {34374#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34375#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,029 INFO L290 TraceCheckUtils]: 6: Hoare triple {34375#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34376#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:25:53,030 INFO L290 TraceCheckUtils]: 7: Hoare triple {34376#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34377#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:25:53,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {34377#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34378#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* 5 |student_version_#in~a|) 1) student_version_~m))} is VALID [2022-04-27 22:25:53,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {34378#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* 5 |student_version_#in~a|) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,031 INFO L290 TraceCheckUtils]: 10: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,031 INFO L290 TraceCheckUtils]: 12: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,032 INFO L290 TraceCheckUtils]: 13: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,032 INFO L290 TraceCheckUtils]: 14: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,033 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} {34347#(<= main_~m~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {34328#false} is VALID [2022-04-27 22:25:53,033 INFO L272 TraceCheckUtils]: 0: Hoare triple {34327#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34364#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:25:53,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {34364#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {34327#true} is VALID [2022-04-27 22:25:53,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {34327#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:53,033 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34327#true} {34327#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:53,033 INFO L272 TraceCheckUtils]: 4: Hoare triple {34327#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:53,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {34327#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:53,034 INFO L290 TraceCheckUtils]: 6: Hoare triple {34327#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:53,034 INFO L272 TraceCheckUtils]: 7: Hoare triple {34327#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:53,034 INFO L290 TraceCheckUtils]: 8: Hoare triple {34327#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:53,034 INFO L290 TraceCheckUtils]: 9: Hoare triple {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:53,035 INFO L290 TraceCheckUtils]: 10: Hoare triple {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:25:53,035 INFO L290 TraceCheckUtils]: 11: Hoare triple {34365#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34366#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:25:53,036 INFO L290 TraceCheckUtils]: 12: Hoare triple {34366#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34367#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:53,036 INFO L290 TraceCheckUtils]: 13: Hoare triple {34367#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34368#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:25:53,037 INFO L290 TraceCheckUtils]: 14: Hoare triple {34368#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34369#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:25:53,037 INFO L290 TraceCheckUtils]: 15: Hoare triple {34369#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34370#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 |correct_version_#in~a|)))} is VALID [2022-04-27 22:25:53,038 INFO L290 TraceCheckUtils]: 16: Hoare triple {34370#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:53,038 INFO L290 TraceCheckUtils]: 17: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:53,038 INFO L290 TraceCheckUtils]: 18: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:53,039 INFO L290 TraceCheckUtils]: 19: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:53,039 INFO L290 TraceCheckUtils]: 20: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:53,039 INFO L290 TraceCheckUtils]: 21: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:53,040 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} {34327#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {34347#(<= main_~m~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:25:53,040 INFO L290 TraceCheckUtils]: 23: Hoare triple {34347#(<= main_~m~0 (* 5 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {34347#(<= main_~m~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:25:53,040 INFO L272 TraceCheckUtils]: 24: Hoare triple {34347#(<= main_~m~0 (* 5 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:53,041 INFO L290 TraceCheckUtils]: 25: Hoare triple {34327#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,041 INFO L290 TraceCheckUtils]: 26: Hoare triple {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,041 INFO L290 TraceCheckUtils]: 27: Hoare triple {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {34372#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34373#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:25:53,042 INFO L290 TraceCheckUtils]: 29: Hoare triple {34373#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34374#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,043 INFO L290 TraceCheckUtils]: 30: Hoare triple {34374#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34375#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:25:53,044 INFO L290 TraceCheckUtils]: 31: Hoare triple {34375#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34376#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:25:53,044 INFO L290 TraceCheckUtils]: 32: Hoare triple {34376#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34377#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:25:53,045 INFO L290 TraceCheckUtils]: 33: Hoare triple {34377#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34378#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* 5 |student_version_#in~a|) 1) student_version_~m))} is VALID [2022-04-27 22:25:53,045 INFO L290 TraceCheckUtils]: 34: Hoare triple {34378#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* 5 |student_version_#in~a|) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,045 INFO L290 TraceCheckUtils]: 35: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,046 INFO L290 TraceCheckUtils]: 36: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,046 INFO L290 TraceCheckUtils]: 37: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,046 INFO L290 TraceCheckUtils]: 38: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,046 INFO L290 TraceCheckUtils]: 39: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:53,047 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} {34347#(<= main_~m~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {34328#false} is VALID [2022-04-27 22:25:53,047 INFO L290 TraceCheckUtils]: 41: Hoare triple {34328#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {34328#false} is VALID [2022-04-27 22:25:53,047 INFO L272 TraceCheckUtils]: 42: Hoare triple {34328#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {34328#false} is VALID [2022-04-27 22:25:53,047 INFO L290 TraceCheckUtils]: 43: Hoare triple {34328#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {34328#false} is VALID [2022-04-27 22:25:53,047 INFO L290 TraceCheckUtils]: 44: Hoare triple {34328#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {34328#false} is VALID [2022-04-27 22:25:53,048 INFO L290 TraceCheckUtils]: 45: Hoare triple {34328#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34328#false} is VALID [2022-04-27 22:25:53,048 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:53,048 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:25:53,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [901418128] [2022-04-27 22:25:53,048 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [901418128] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:25:53,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1654496918] [2022-04-27 22:25:53,048 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:25:53,048 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:25:53,048 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:25:53,055 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:25:53,056 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-27 22:25:53,117 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-27 22:25:53,117 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:25:53,117 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-27 22:25:53,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:25:53,130 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:25:54,191 INFO L272 TraceCheckUtils]: 0: Hoare triple {34327#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:54,191 INFO L290 TraceCheckUtils]: 1: Hoare triple {34327#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {34327#true} is VALID [2022-04-27 22:25:54,191 INFO L290 TraceCheckUtils]: 2: Hoare triple {34327#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:54,191 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34327#true} {34327#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:54,191 INFO L272 TraceCheckUtils]: 4: Hoare triple {34327#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:54,191 INFO L290 TraceCheckUtils]: 5: Hoare triple {34327#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:54,192 INFO L290 TraceCheckUtils]: 6: Hoare triple {34327#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:54,192 INFO L272 TraceCheckUtils]: 7: Hoare triple {34327#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:54,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {34327#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {34407#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,192 INFO L290 TraceCheckUtils]: 9: Hoare triple {34407#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {34407#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,193 INFO L290 TraceCheckUtils]: 10: Hoare triple {34407#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {34407#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,193 INFO L290 TraceCheckUtils]: 11: Hoare triple {34407#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34417#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,194 INFO L290 TraceCheckUtils]: 12: Hoare triple {34417#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34421#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,195 INFO L290 TraceCheckUtils]: 13: Hoare triple {34421#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34425#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,195 INFO L290 TraceCheckUtils]: 14: Hoare triple {34425#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34429#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,196 INFO L290 TraceCheckUtils]: 15: Hoare triple {34429#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34433#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 5)) |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {34433#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 5)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,196 INFO L290 TraceCheckUtils]: 17: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,197 INFO L290 TraceCheckUtils]: 18: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,197 INFO L290 TraceCheckUtils]: 19: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,197 INFO L290 TraceCheckUtils]: 20: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,198 INFO L290 TraceCheckUtils]: 21: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:54,198 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} {34327#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {34347#(<= main_~m~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:25:54,199 INFO L290 TraceCheckUtils]: 23: Hoare triple {34347#(<= main_~m~0 (* 5 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {34347#(<= main_~m~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:25:54,199 INFO L272 TraceCheckUtils]: 24: Hoare triple {34347#(<= main_~m~0 (* 5 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:54,199 INFO L290 TraceCheckUtils]: 25: Hoare triple {34327#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {34464#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:54,200 INFO L290 TraceCheckUtils]: 26: Hoare triple {34464#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {34464#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:54,200 INFO L290 TraceCheckUtils]: 27: Hoare triple {34464#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {34464#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:54,201 INFO L290 TraceCheckUtils]: 28: Hoare triple {34464#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34474#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:25:54,201 INFO L290 TraceCheckUtils]: 29: Hoare triple {34474#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34478#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:54,202 INFO L290 TraceCheckUtils]: 30: Hoare triple {34478#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34482#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:25:54,202 INFO L290 TraceCheckUtils]: 31: Hoare triple {34482#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34486#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:25:54,203 INFO L290 TraceCheckUtils]: 32: Hoare triple {34486#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34490#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 5)))} is VALID [2022-04-27 22:25:54,203 INFO L290 TraceCheckUtils]: 33: Hoare triple {34490#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 5)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:54,204 INFO L290 TraceCheckUtils]: 34: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:54,204 INFO L290 TraceCheckUtils]: 35: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:54,204 INFO L290 TraceCheckUtils]: 36: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:54,205 INFO L290 TraceCheckUtils]: 37: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:54,205 INFO L290 TraceCheckUtils]: 38: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:54,205 INFO L290 TraceCheckUtils]: 39: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:54,206 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} {34347#(<= main_~m~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {34328#false} is VALID [2022-04-27 22:25:54,206 INFO L290 TraceCheckUtils]: 41: Hoare triple {34328#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {34328#false} is VALID [2022-04-27 22:25:54,206 INFO L272 TraceCheckUtils]: 42: Hoare triple {34328#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {34328#false} is VALID [2022-04-27 22:25:54,206 INFO L290 TraceCheckUtils]: 43: Hoare triple {34328#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {34328#false} is VALID [2022-04-27 22:25:54,206 INFO L290 TraceCheckUtils]: 44: Hoare triple {34328#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {34328#false} is VALID [2022-04-27 22:25:54,206 INFO L290 TraceCheckUtils]: 45: Hoare triple {34328#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34328#false} is VALID [2022-04-27 22:25:54,206 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:54,207 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:25:55,736 INFO L290 TraceCheckUtils]: 45: Hoare triple {34328#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34328#false} is VALID [2022-04-27 22:25:55,736 INFO L290 TraceCheckUtils]: 44: Hoare triple {34328#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {34328#false} is VALID [2022-04-27 22:25:55,736 INFO L290 TraceCheckUtils]: 43: Hoare triple {34328#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {34328#false} is VALID [2022-04-27 22:25:55,736 INFO L272 TraceCheckUtils]: 42: Hoare triple {34328#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {34328#false} is VALID [2022-04-27 22:25:55,737 INFO L290 TraceCheckUtils]: 41: Hoare triple {34328#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {34328#false} is VALID [2022-04-27 22:25:55,737 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} {34347#(<= main_~m~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {34328#false} is VALID [2022-04-27 22:25:55,738 INFO L290 TraceCheckUtils]: 39: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:55,738 INFO L290 TraceCheckUtils]: 38: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:55,738 INFO L290 TraceCheckUtils]: 37: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:55,739 INFO L290 TraceCheckUtils]: 36: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:55,739 INFO L290 TraceCheckUtils]: 35: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:55,739 INFO L290 TraceCheckUtils]: 34: Hoare triple {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:55,740 INFO L290 TraceCheckUtils]: 33: Hoare triple {34569#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34379#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:25:55,740 INFO L290 TraceCheckUtils]: 32: Hoare triple {34573#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34569#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:25:55,741 INFO L290 TraceCheckUtils]: 31: Hoare triple {34577#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34573#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:25:55,741 INFO L290 TraceCheckUtils]: 30: Hoare triple {34581#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34577#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:25:55,742 INFO L290 TraceCheckUtils]: 29: Hoare triple {34585#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34581#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:25:55,742 INFO L290 TraceCheckUtils]: 28: Hoare triple {34589#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {34585#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))))} is VALID [2022-04-27 22:25:55,743 INFO L290 TraceCheckUtils]: 27: Hoare triple {34589#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {34589#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:25:55,743 INFO L290 TraceCheckUtils]: 26: Hoare triple {34589#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {34589#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:25:55,744 INFO L290 TraceCheckUtils]: 25: Hoare triple {34327#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {34589#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:25:55,744 INFO L272 TraceCheckUtils]: 24: Hoare triple {34347#(<= main_~m~0 (* 5 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:55,744 INFO L290 TraceCheckUtils]: 23: Hoare triple {34347#(<= main_~m~0 (* 5 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {34347#(<= main_~m~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:25:55,745 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} {34327#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {34347#(<= main_~m~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:25:55,745 INFO L290 TraceCheckUtils]: 21: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:55,745 INFO L290 TraceCheckUtils]: 20: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:55,746 INFO L290 TraceCheckUtils]: 19: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:55,746 INFO L290 TraceCheckUtils]: 18: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:55,746 INFO L290 TraceCheckUtils]: 17: Hoare triple {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:55,747 INFO L290 TraceCheckUtils]: 16: Hoare triple {34626#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {34371#(<= |correct_version_#in~m| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:25:55,747 INFO L290 TraceCheckUtils]: 15: Hoare triple {34630#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34626#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} is VALID [2022-04-27 22:25:55,748 INFO L290 TraceCheckUtils]: 14: Hoare triple {34634#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34630#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:25:55,748 INFO L290 TraceCheckUtils]: 13: Hoare triple {34638#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34634#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m))} is VALID [2022-04-27 22:25:55,749 INFO L290 TraceCheckUtils]: 12: Hoare triple {34642#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34638#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)))} is VALID [2022-04-27 22:25:55,750 INFO L290 TraceCheckUtils]: 11: Hoare triple {34646#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {34642#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)))} is VALID [2022-04-27 22:25:55,750 INFO L290 TraceCheckUtils]: 10: Hoare triple {34646#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {34646#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:25:55,750 INFO L290 TraceCheckUtils]: 9: Hoare triple {34646#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {34646#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:25:55,751 INFO L290 TraceCheckUtils]: 8: Hoare triple {34327#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {34646#(or (<= |correct_version_#in~m| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:25:55,751 INFO L272 TraceCheckUtils]: 7: Hoare triple {34327#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:55,751 INFO L290 TraceCheckUtils]: 6: Hoare triple {34327#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:55,751 INFO L290 TraceCheckUtils]: 5: Hoare triple {34327#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {34327#true} is VALID [2022-04-27 22:25:55,751 INFO L272 TraceCheckUtils]: 4: Hoare triple {34327#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:55,751 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34327#true} {34327#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:55,751 INFO L290 TraceCheckUtils]: 2: Hoare triple {34327#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:55,751 INFO L290 TraceCheckUtils]: 1: Hoare triple {34327#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {34327#true} is VALID [2022-04-27 22:25:55,751 INFO L272 TraceCheckUtils]: 0: Hoare triple {34327#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34327#true} is VALID [2022-04-27 22:25:55,752 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:25:55,752 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1654496918] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:25:55,752 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:25:55,752 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 17, 17] total 43 [2022-04-27 22:25:55,752 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1153711667] [2022-04-27 22:25:55,752 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:25:55,753 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 46 [2022-04-27 22:25:55,753 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:25:55,753 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:25:55,807 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:25:55,807 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-04-27 22:25:55,808 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:25:55,808 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-04-27 22:25:55,808 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=138, Invalid=1668, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 22:25:55,808 INFO L87 Difference]: Start difference. First operand 222 states and 259 transitions. Second operand has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:01,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:01,139 INFO L93 Difference]: Finished difference Result 268 states and 314 transitions. [2022-04-27 22:26:01,139 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-27 22:26:01,139 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 46 [2022-04-27 22:26:01,139 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:01,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:01,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 130 transitions. [2022-04-27 22:26:01,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:01,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 130 transitions. [2022-04-27 22:26:01,141 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 130 transitions. [2022-04-27 22:26:01,242 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:01,246 INFO L225 Difference]: With dead ends: 268 [2022-04-27 22:26:01,246 INFO L226 Difference]: Without dead ends: 254 [2022-04-27 22:26:01,247 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 65 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 584 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=376, Invalid=4046, Unknown=0, NotChecked=0, Total=4422 [2022-04-27 22:26:01,248 INFO L413 NwaCegarLoop]: 74 mSDtfsCounter, 501 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 2099 mSolverCounterSat, 64 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 506 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 2163 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 64 IncrementalHoareTripleChecker+Valid, 2099 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:01,248 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [506 Valid, 181 Invalid, 2163 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [64 Valid, 2099 Invalid, 0 Unknown, 0 Unchecked, 1.7s Time] [2022-04-27 22:26:01,248 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 254 states. [2022-04-27 22:26:02,507 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 254 to 245. [2022-04-27 22:26:02,507 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:02,507 INFO L82 GeneralOperation]: Start isEquivalent. First operand 254 states. Second operand has 245 states, 206 states have (on average 1.1941747572815533) internal successors, (246), 226 states have internal predecessors, (246), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (26), 13 states have call predecessors, (26), 13 states have call successors, (26) [2022-04-27 22:26:02,507 INFO L74 IsIncluded]: Start isIncluded. First operand 254 states. Second operand has 245 states, 206 states have (on average 1.1941747572815533) internal successors, (246), 226 states have internal predecessors, (246), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (26), 13 states have call predecessors, (26), 13 states have call successors, (26) [2022-04-27 22:26:02,508 INFO L87 Difference]: Start difference. First operand 254 states. Second operand has 245 states, 206 states have (on average 1.1941747572815533) internal successors, (246), 226 states have internal predecessors, (246), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (26), 13 states have call predecessors, (26), 13 states have call successors, (26) [2022-04-27 22:26:02,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:02,511 INFO L93 Difference]: Finished difference Result 254 states and 297 transitions. [2022-04-27 22:26:02,511 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 297 transitions. [2022-04-27 22:26:02,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:02,512 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:02,512 INFO L74 IsIncluded]: Start isIncluded. First operand has 245 states, 206 states have (on average 1.1941747572815533) internal successors, (246), 226 states have internal predecessors, (246), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (26), 13 states have call predecessors, (26), 13 states have call successors, (26) Second operand 254 states. [2022-04-27 22:26:02,512 INFO L87 Difference]: Start difference. First operand has 245 states, 206 states have (on average 1.1941747572815533) internal successors, (246), 226 states have internal predecessors, (246), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (26), 13 states have call predecessors, (26), 13 states have call successors, (26) Second operand 254 states. [2022-04-27 22:26:02,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:02,515 INFO L93 Difference]: Finished difference Result 254 states and 297 transitions. [2022-04-27 22:26:02,515 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 297 transitions. [2022-04-27 22:26:02,516 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:02,516 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:02,516 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:02,516 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:02,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 245 states, 206 states have (on average 1.1941747572815533) internal successors, (246), 226 states have internal predecessors, (246), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (26), 13 states have call predecessors, (26), 13 states have call successors, (26) [2022-04-27 22:26:02,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 245 states to 245 states and 287 transitions. [2022-04-27 22:26:02,520 INFO L78 Accepts]: Start accepts. Automaton has 245 states and 287 transitions. Word has length 46 [2022-04-27 22:26:02,520 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:02,520 INFO L495 AbstractCegarLoop]: Abstraction has 245 states and 287 transitions. [2022-04-27 22:26:02,520 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:02,520 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 287 transitions. [2022-04-27 22:26:02,521 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-27 22:26:02,521 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:02,521 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:26:02,549 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:02,737 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-27 22:26:02,738 INFO L420 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:02,738 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:02,738 INFO L85 PathProgramCache]: Analyzing trace with hash 965202579, now seen corresponding path program 31 times [2022-04-27 22:26:02,738 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:02,738 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [829145382] [2022-04-27 22:26:02,738 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:02,738 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:02,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:02,769 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:02,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:02,771 INFO L290 TraceCheckUtils]: 0: Hoare triple {35993#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35956#true} is VALID [2022-04-27 22:26:02,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {35956#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:02,771 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35956#true} {35956#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:02,771 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:02,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:02,878 INFO L290 TraceCheckUtils]: 0: Hoare triple {35956#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:02,879 INFO L290 TraceCheckUtils]: 1: Hoare triple {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:02,880 INFO L290 TraceCheckUtils]: 2: Hoare triple {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:02,881 INFO L290 TraceCheckUtils]: 3: Hoare triple {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35995#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:02,882 INFO L290 TraceCheckUtils]: 4: Hoare triple {35995#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35996#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:02,883 INFO L290 TraceCheckUtils]: 5: Hoare triple {35996#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35997#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:02,884 INFO L290 TraceCheckUtils]: 6: Hoare triple {35997#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35998#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:02,885 INFO L290 TraceCheckUtils]: 7: Hoare triple {35998#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35999#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:26:02,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {35999#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36000#(and (<= (+ (* 5 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:26:02,886 INFO L290 TraceCheckUtils]: 9: Hoare triple {36000#(and (<= (+ (* 5 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:02,887 INFO L290 TraceCheckUtils]: 10: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:02,887 INFO L290 TraceCheckUtils]: 11: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:02,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:02,888 INFO L290 TraceCheckUtils]: 13: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:02,889 INFO L290 TraceCheckUtils]: 14: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:02,890 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {35956#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:26:02,891 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-04-27 22:26:02,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:03,026 INFO L290 TraceCheckUtils]: 0: Hoare triple {35956#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:26:03,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:26:03,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:26:03,027 INFO L290 TraceCheckUtils]: 3: Hoare triple {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:26:03,028 INFO L290 TraceCheckUtils]: 4: Hoare triple {36003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:26:03,028 INFO L290 TraceCheckUtils]: 5: Hoare triple {36004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:26:03,029 INFO L290 TraceCheckUtils]: 6: Hoare triple {36005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:26:03,029 INFO L290 TraceCheckUtils]: 7: Hoare triple {36006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36007#(and (<= student_version_~l~1 (* 5 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:03,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {36007#(and (<= student_version_~l~1 (* 5 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,030 INFO L290 TraceCheckUtils]: 10: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,031 INFO L290 TraceCheckUtils]: 12: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,031 INFO L290 TraceCheckUtils]: 13: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,032 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {35957#false} is VALID [2022-04-27 22:26:03,033 INFO L272 TraceCheckUtils]: 0: Hoare triple {35956#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35993#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:03,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {35993#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35956#true} is VALID [2022-04-27 22:26:03,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {35956#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,033 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35956#true} {35956#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,033 INFO L272 TraceCheckUtils]: 4: Hoare triple {35956#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,033 INFO L290 TraceCheckUtils]: 5: Hoare triple {35956#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:03,033 INFO L290 TraceCheckUtils]: 6: Hoare triple {35956#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,033 INFO L272 TraceCheckUtils]: 7: Hoare triple {35956#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:03,034 INFO L290 TraceCheckUtils]: 8: Hoare triple {35956#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,034 INFO L290 TraceCheckUtils]: 9: Hoare triple {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,035 INFO L290 TraceCheckUtils]: 10: Hoare triple {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,035 INFO L290 TraceCheckUtils]: 11: Hoare triple {35994#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35995#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,036 INFO L290 TraceCheckUtils]: 12: Hoare triple {35995#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35996#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,036 INFO L290 TraceCheckUtils]: 13: Hoare triple {35996#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35997#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,037 INFO L290 TraceCheckUtils]: 14: Hoare triple {35997#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35998#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,037 INFO L290 TraceCheckUtils]: 15: Hoare triple {35998#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {35999#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:26:03,038 INFO L290 TraceCheckUtils]: 16: Hoare triple {35999#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36000#(and (<= (+ (* 5 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:26:03,038 INFO L290 TraceCheckUtils]: 17: Hoare triple {36000#(and (<= (+ (* 5 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,038 INFO L290 TraceCheckUtils]: 18: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,039 INFO L290 TraceCheckUtils]: 19: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,039 INFO L290 TraceCheckUtils]: 20: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,039 INFO L290 TraceCheckUtils]: 21: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,040 INFO L290 TraceCheckUtils]: 22: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,040 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {35956#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:26:03,041 INFO L290 TraceCheckUtils]: 24: Hoare triple {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:26:03,041 INFO L272 TraceCheckUtils]: 25: Hoare triple {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:03,041 INFO L290 TraceCheckUtils]: 26: Hoare triple {35956#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:26:03,041 INFO L290 TraceCheckUtils]: 27: Hoare triple {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:26:03,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:26:03,042 INFO L290 TraceCheckUtils]: 29: Hoare triple {36002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:26:03,043 INFO L290 TraceCheckUtils]: 30: Hoare triple {36003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:26:03,043 INFO L290 TraceCheckUtils]: 31: Hoare triple {36004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:26:03,044 INFO L290 TraceCheckUtils]: 32: Hoare triple {36005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:26:03,044 INFO L290 TraceCheckUtils]: 33: Hoare triple {36006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36007#(and (<= student_version_~l~1 (* 5 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:03,045 INFO L290 TraceCheckUtils]: 34: Hoare triple {36007#(and (<= student_version_~l~1 (* 5 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,045 INFO L290 TraceCheckUtils]: 35: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,045 INFO L290 TraceCheckUtils]: 36: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,046 INFO L290 TraceCheckUtils]: 37: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,046 INFO L290 TraceCheckUtils]: 38: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,046 INFO L290 TraceCheckUtils]: 39: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,047 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {35957#false} is VALID [2022-04-27 22:26:03,047 INFO L290 TraceCheckUtils]: 41: Hoare triple {35957#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {35957#false} is VALID [2022-04-27 22:26:03,047 INFO L272 TraceCheckUtils]: 42: Hoare triple {35957#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {35957#false} is VALID [2022-04-27 22:26:03,047 INFO L290 TraceCheckUtils]: 43: Hoare triple {35957#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {35957#false} is VALID [2022-04-27 22:26:03,047 INFO L290 TraceCheckUtils]: 44: Hoare triple {35957#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {35957#false} is VALID [2022-04-27 22:26:03,047 INFO L290 TraceCheckUtils]: 45: Hoare triple {35957#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35957#false} is VALID [2022-04-27 22:26:03,047 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:26:03,048 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:03,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [829145382] [2022-04-27 22:26:03,048 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [829145382] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:03,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1861580969] [2022-04-27 22:26:03,048 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:26:03,048 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:03,048 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:03,049 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:03,050 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-27 22:26:03,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:03,110 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-27 22:26:03,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:03,123 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:03,940 INFO L272 TraceCheckUtils]: 0: Hoare triple {35956#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {35956#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L290 TraceCheckUtils]: 2: Hoare triple {35956#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35956#true} {35956#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L272 TraceCheckUtils]: 4: Hoare triple {35956#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L290 TraceCheckUtils]: 5: Hoare triple {35956#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L290 TraceCheckUtils]: 6: Hoare triple {35956#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L272 TraceCheckUtils]: 7: Hoare triple {35956#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:03,941 INFO L290 TraceCheckUtils]: 8: Hoare triple {35956#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {36036#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,942 INFO L290 TraceCheckUtils]: 9: Hoare triple {36036#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {36036#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,942 INFO L290 TraceCheckUtils]: 10: Hoare triple {36036#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {36036#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,943 INFO L290 TraceCheckUtils]: 11: Hoare triple {36036#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36046#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,943 INFO L290 TraceCheckUtils]: 12: Hoare triple {36046#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36050#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,944 INFO L290 TraceCheckUtils]: 13: Hoare triple {36050#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36054#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,944 INFO L290 TraceCheckUtils]: 14: Hoare triple {36054#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36058#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:03,945 INFO L290 TraceCheckUtils]: 15: Hoare triple {36058#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36062#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 5)))} is VALID [2022-04-27 22:26:03,946 INFO L290 TraceCheckUtils]: 16: Hoare triple {36062#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 5)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,946 INFO L290 TraceCheckUtils]: 17: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,946 INFO L290 TraceCheckUtils]: 18: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,947 INFO L290 TraceCheckUtils]: 19: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,947 INFO L290 TraceCheckUtils]: 20: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,947 INFO L290 TraceCheckUtils]: 21: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,947 INFO L290 TraceCheckUtils]: 22: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:03,948 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {35956#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:26:03,948 INFO L290 TraceCheckUtils]: 24: Hoare triple {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:26:03,949 INFO L272 TraceCheckUtils]: 25: Hoare triple {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:03,949 INFO L290 TraceCheckUtils]: 26: Hoare triple {35956#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {36096#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,949 INFO L290 TraceCheckUtils]: 27: Hoare triple {36096#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {36096#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,950 INFO L290 TraceCheckUtils]: 28: Hoare triple {36096#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {36096#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,950 INFO L290 TraceCheckUtils]: 29: Hoare triple {36096#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36106#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,951 INFO L290 TraceCheckUtils]: 30: Hoare triple {36106#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36110#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:26:03,951 INFO L290 TraceCheckUtils]: 31: Hoare triple {36110#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36114#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,952 INFO L290 TraceCheckUtils]: 32: Hoare triple {36114#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36118#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,953 INFO L290 TraceCheckUtils]: 33: Hoare triple {36118#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36122#(and (<= (div (- student_version_~l~1) (- 5)) |student_version_#in~a|) (<= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:03,953 INFO L290 TraceCheckUtils]: 34: Hoare triple {36122#(and (<= (div (- student_version_~l~1) (- 5)) |student_version_#in~a|) (<= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,953 INFO L290 TraceCheckUtils]: 35: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,954 INFO L290 TraceCheckUtils]: 36: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,954 INFO L290 TraceCheckUtils]: 37: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,954 INFO L290 TraceCheckUtils]: 38: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,955 INFO L290 TraceCheckUtils]: 39: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:03,955 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {35957#false} is VALID [2022-04-27 22:26:03,955 INFO L290 TraceCheckUtils]: 41: Hoare triple {35957#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {35957#false} is VALID [2022-04-27 22:26:03,955 INFO L272 TraceCheckUtils]: 42: Hoare triple {35957#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {35957#false} is VALID [2022-04-27 22:26:03,956 INFO L290 TraceCheckUtils]: 43: Hoare triple {35957#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {35957#false} is VALID [2022-04-27 22:26:03,956 INFO L290 TraceCheckUtils]: 44: Hoare triple {35957#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {35957#false} is VALID [2022-04-27 22:26:03,956 INFO L290 TraceCheckUtils]: 45: Hoare triple {35957#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35957#false} is VALID [2022-04-27 22:26:03,956 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:26:03,956 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:05,148 INFO L290 TraceCheckUtils]: 45: Hoare triple {35957#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35957#false} is VALID [2022-04-27 22:26:05,148 INFO L290 TraceCheckUtils]: 44: Hoare triple {35957#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {35957#false} is VALID [2022-04-27 22:26:05,148 INFO L290 TraceCheckUtils]: 43: Hoare triple {35957#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {35957#false} is VALID [2022-04-27 22:26:05,148 INFO L272 TraceCheckUtils]: 42: Hoare triple {35957#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {35957#false} is VALID [2022-04-27 22:26:05,148 INFO L290 TraceCheckUtils]: 41: Hoare triple {35957#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {35957#false} is VALID [2022-04-27 22:26:05,149 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {35957#false} is VALID [2022-04-27 22:26:05,149 INFO L290 TraceCheckUtils]: 39: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:05,149 INFO L290 TraceCheckUtils]: 38: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:05,150 INFO L290 TraceCheckUtils]: 37: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:05,150 INFO L290 TraceCheckUtils]: 36: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:05,150 INFO L290 TraceCheckUtils]: 35: Hoare triple {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:05,150 INFO L290 TraceCheckUtils]: 34: Hoare triple {36195#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {36008#(<= |student_version_#in~m| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:26:05,151 INFO L290 TraceCheckUtils]: 33: Hoare triple {36199#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36195#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:26:05,152 INFO L290 TraceCheckUtils]: 32: Hoare triple {36203#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36199#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:26:05,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {36207#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36203#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:26:05,153 INFO L290 TraceCheckUtils]: 30: Hoare triple {36211#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36207#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:26:05,153 INFO L290 TraceCheckUtils]: 29: Hoare triple {36215#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {36211#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:26:05,153 INFO L290 TraceCheckUtils]: 28: Hoare triple {36215#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {36215#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:26:05,154 INFO L290 TraceCheckUtils]: 27: Hoare triple {36215#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {36215#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:26:05,154 INFO L290 TraceCheckUtils]: 26: Hoare triple {35956#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {36215#(or (<= |student_version_#in~m| (* 5 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:26:05,154 INFO L272 TraceCheckUtils]: 25: Hoare triple {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:05,154 INFO L290 TraceCheckUtils]: 24: Hoare triple {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:26:05,155 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {35956#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {35977#(<= (+ (* 5 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:26:05,155 INFO L290 TraceCheckUtils]: 22: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:05,155 INFO L290 TraceCheckUtils]: 21: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:05,156 INFO L290 TraceCheckUtils]: 20: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:05,156 INFO L290 TraceCheckUtils]: 19: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:05,156 INFO L290 TraceCheckUtils]: 18: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:05,156 INFO L290 TraceCheckUtils]: 17: Hoare triple {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:05,156 INFO L290 TraceCheckUtils]: 16: Hoare triple {36255#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36001#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:26:05,157 INFO L290 TraceCheckUtils]: 15: Hoare triple {36259#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36255#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:26:05,157 INFO L290 TraceCheckUtils]: 14: Hoare triple {36263#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36259#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)))} is VALID [2022-04-27 22:26:05,158 INFO L290 TraceCheckUtils]: 13: Hoare triple {36267#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36263#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:26:05,158 INFO L290 TraceCheckUtils]: 12: Hoare triple {36271#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36267#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} is VALID [2022-04-27 22:26:05,175 INFO L290 TraceCheckUtils]: 11: Hoare triple {36275#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {36271#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))))} is VALID [2022-04-27 22:26:05,175 INFO L290 TraceCheckUtils]: 10: Hoare triple {36275#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {36275#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} is VALID [2022-04-27 22:26:05,176 INFO L290 TraceCheckUtils]: 9: Hoare triple {36275#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {36275#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} is VALID [2022-04-27 22:26:05,176 INFO L290 TraceCheckUtils]: 8: Hoare triple {35956#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {36275#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} is VALID [2022-04-27 22:26:05,176 INFO L272 TraceCheckUtils]: 7: Hoare triple {35956#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:05,176 INFO L290 TraceCheckUtils]: 6: Hoare triple {35956#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:05,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {35956#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {35956#true} is VALID [2022-04-27 22:26:05,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {35956#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:05,177 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35956#true} {35956#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:05,177 INFO L290 TraceCheckUtils]: 2: Hoare triple {35956#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:05,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {35956#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35956#true} is VALID [2022-04-27 22:26:05,177 INFO L272 TraceCheckUtils]: 0: Hoare triple {35956#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35956#true} is VALID [2022-04-27 22:26:05,177 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:26:05,177 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1861580969] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:05,177 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:05,177 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 17, 17] total 43 [2022-04-27 22:26:05,177 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1009830679] [2022-04-27 22:26:05,178 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:05,178 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 46 [2022-04-27 22:26:05,178 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:05,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:05,236 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:05,236 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-04-27 22:26:05,236 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:05,236 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-04-27 22:26:05,236 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=138, Invalid=1668, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 22:26:05,237 INFO L87 Difference]: Start difference. First operand 245 states and 287 transitions. Second operand has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:11,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:11,291 INFO L93 Difference]: Finished difference Result 260 states and 302 transitions. [2022-04-27 22:26:11,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-27 22:26:11,292 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 46 [2022-04-27 22:26:11,292 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:11,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:11,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 129 transitions. [2022-04-27 22:26:11,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:11,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 129 transitions. [2022-04-27 22:26:11,294 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 129 transitions. [2022-04-27 22:26:11,367 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:11,370 INFO L225 Difference]: With dead ends: 260 [2022-04-27 22:26:11,370 INFO L226 Difference]: Without dead ends: 248 [2022-04-27 22:26:11,371 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 65 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 593 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=376, Invalid=4046, Unknown=0, NotChecked=0, Total=4422 [2022-04-27 22:26:11,372 INFO L413 NwaCegarLoop]: 76 mSDtfsCounter, 469 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 2620 mSolverCounterSat, 55 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 480 SdHoareTripleChecker+Valid, 213 SdHoareTripleChecker+Invalid, 2675 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 55 IncrementalHoareTripleChecker+Valid, 2620 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:11,372 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [480 Valid, 213 Invalid, 2675 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 2620 Invalid, 0 Unknown, 0 Unchecked, 2.1s Time] [2022-04-27 22:26:11,372 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 248 states. [2022-04-27 22:26:12,056 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 248 to 246. [2022-04-27 22:26:12,057 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:12,057 INFO L82 GeneralOperation]: Start isEquivalent. First operand 248 states. Second operand has 246 states, 207 states have (on average 1.1932367149758454) internal successors, (247), 227 states have internal predecessors, (247), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:12,057 INFO L74 IsIncluded]: Start isIncluded. First operand 248 states. Second operand has 246 states, 207 states have (on average 1.1932367149758454) internal successors, (247), 227 states have internal predecessors, (247), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:12,057 INFO L87 Difference]: Start difference. First operand 248 states. Second operand has 246 states, 207 states have (on average 1.1932367149758454) internal successors, (247), 227 states have internal predecessors, (247), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:12,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:12,060 INFO L93 Difference]: Finished difference Result 248 states and 288 transitions. [2022-04-27 22:26:12,061 INFO L276 IsEmpty]: Start isEmpty. Operand 248 states and 288 transitions. [2022-04-27 22:26:12,061 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:12,061 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:12,061 INFO L74 IsIncluded]: Start isIncluded. First operand has 246 states, 207 states have (on average 1.1932367149758454) internal successors, (247), 227 states have internal predecessors, (247), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) Second operand 248 states. [2022-04-27 22:26:12,061 INFO L87 Difference]: Start difference. First operand has 246 states, 207 states have (on average 1.1932367149758454) internal successors, (247), 227 states have internal predecessors, (247), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) Second operand 248 states. [2022-04-27 22:26:12,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:12,065 INFO L93 Difference]: Finished difference Result 248 states and 288 transitions. [2022-04-27 22:26:12,065 INFO L276 IsEmpty]: Start isEmpty. Operand 248 states and 288 transitions. [2022-04-27 22:26:12,065 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:12,065 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:12,065 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:12,065 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:12,065 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 246 states, 207 states have (on average 1.1932367149758454) internal successors, (247), 227 states have internal predecessors, (247), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:12,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 246 states to 246 states and 286 transitions. [2022-04-27 22:26:12,069 INFO L78 Accepts]: Start accepts. Automaton has 246 states and 286 transitions. Word has length 46 [2022-04-27 22:26:12,069 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:12,069 INFO L495 AbstractCegarLoop]: Abstraction has 246 states and 286 transitions. [2022-04-27 22:26:12,069 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 43 states have (on average 1.7674418604651163) internal successors, (76), 42 states have internal predecessors, (76), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:12,069 INFO L276 IsEmpty]: Start isEmpty. Operand 246 states and 286 transitions. [2022-04-27 22:26:12,070 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-27 22:26:12,070 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:12,070 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 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, 1] [2022-04-27 22:26:12,086 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:12,286 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable40,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:12,286 INFO L420 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:12,287 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:12,287 INFO L85 PathProgramCache]: Analyzing trace with hash -2018214053, now seen corresponding path program 32 times [2022-04-27 22:26:12,287 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:12,287 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1288438863] [2022-04-27 22:26:12,287 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:12,287 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:12,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:12,319 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:12,320 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:12,322 INFO L290 TraceCheckUtils]: 0: Hoare triple {37599#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {37563#true} is VALID [2022-04-27 22:26:12,322 INFO L290 TraceCheckUtils]: 1: Hoare triple {37563#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,322 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {37563#true} {37563#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,322 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:12,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:12,326 INFO L290 TraceCheckUtils]: 0: Hoare triple {37563#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,326 INFO L290 TraceCheckUtils]: 1: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,326 INFO L290 TraceCheckUtils]: 2: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,326 INFO L290 TraceCheckUtils]: 3: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,326 INFO L290 TraceCheckUtils]: 4: Hoare triple {37563#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,326 INFO L290 TraceCheckUtils]: 5: Hoare triple {37563#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 6: Hoare triple {37563#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 7: Hoare triple {37563#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 8: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 9: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 10: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 11: Hoare triple {37563#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 12: Hoare triple {37563#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L290 TraceCheckUtils]: 13: Hoare triple {37563#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {37563#true} {37563#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,327 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:26:12,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:12,364 INFO L290 TraceCheckUtils]: 0: Hoare triple {37563#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {37600#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:26:12,364 INFO L290 TraceCheckUtils]: 1: Hoare triple {37600#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37601#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:26:12,365 INFO L290 TraceCheckUtils]: 2: Hoare triple {37601#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37602#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:26:12,365 INFO L290 TraceCheckUtils]: 3: Hoare triple {37602#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,365 INFO L290 TraceCheckUtils]: 4: Hoare triple {37603#(<= student_version_~i~1 3)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,365 INFO L290 TraceCheckUtils]: 5: Hoare triple {37603#(<= student_version_~i~1 3)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,365 INFO L290 TraceCheckUtils]: 6: Hoare triple {37603#(<= student_version_~i~1 3)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,366 INFO L290 TraceCheckUtils]: 7: Hoare triple {37603#(<= student_version_~i~1 3)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37604#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:26:12,366 INFO L290 TraceCheckUtils]: 8: Hoare triple {37604#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37605#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:26:12,367 INFO L290 TraceCheckUtils]: 9: Hoare triple {37605#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37606#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:26:12,367 INFO L290 TraceCheckUtils]: 10: Hoare triple {37606#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37607#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:26:12,367 INFO L290 TraceCheckUtils]: 11: Hoare triple {37607#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37564#false} is VALID [2022-04-27 22:26:12,367 INFO L290 TraceCheckUtils]: 12: Hoare triple {37564#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,367 INFO L290 TraceCheckUtils]: 13: Hoare triple {37564#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {37564#false} is VALID [2022-04-27 22:26:12,367 INFO L290 TraceCheckUtils]: 14: Hoare triple {37564#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,368 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37564#false} {37563#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {37564#false} is VALID [2022-04-27 22:26:12,368 INFO L272 TraceCheckUtils]: 0: Hoare triple {37563#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37599#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:12,368 INFO L290 TraceCheckUtils]: 1: Hoare triple {37599#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {37563#true} is VALID [2022-04-27 22:26:12,368 INFO L290 TraceCheckUtils]: 2: Hoare triple {37563#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,368 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37563#true} {37563#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,368 INFO L272 TraceCheckUtils]: 4: Hoare triple {37563#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {37563#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,368 INFO L290 TraceCheckUtils]: 6: Hoare triple {37563#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,368 INFO L272 TraceCheckUtils]: 7: Hoare triple {37563#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {37563#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 10: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 11: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 12: Hoare triple {37563#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 13: Hoare triple {37563#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 14: Hoare triple {37563#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 15: Hoare triple {37563#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 16: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 17: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 18: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 19: Hoare triple {37563#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 20: Hoare triple {37563#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {37563#true} is VALID [2022-04-27 22:26:12,369 INFO L290 TraceCheckUtils]: 21: Hoare triple {37563#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,370 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {37563#true} {37563#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,370 INFO L290 TraceCheckUtils]: 23: Hoare triple {37563#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {37563#true} is VALID [2022-04-27 22:26:12,370 INFO L272 TraceCheckUtils]: 24: Hoare triple {37563#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,376 INFO L290 TraceCheckUtils]: 25: Hoare triple {37563#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {37600#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:26:12,376 INFO L290 TraceCheckUtils]: 26: Hoare triple {37600#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37601#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:26:12,377 INFO L290 TraceCheckUtils]: 27: Hoare triple {37601#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37602#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:26:12,377 INFO L290 TraceCheckUtils]: 28: Hoare triple {37602#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,377 INFO L290 TraceCheckUtils]: 29: Hoare triple {37603#(<= student_version_~i~1 3)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {37603#(<= student_version_~i~1 3)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,378 INFO L290 TraceCheckUtils]: 31: Hoare triple {37603#(<= student_version_~i~1 3)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,378 INFO L290 TraceCheckUtils]: 32: Hoare triple {37603#(<= student_version_~i~1 3)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37604#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:26:12,379 INFO L290 TraceCheckUtils]: 33: Hoare triple {37604#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37605#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:26:12,379 INFO L290 TraceCheckUtils]: 34: Hoare triple {37605#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37606#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:26:12,380 INFO L290 TraceCheckUtils]: 35: Hoare triple {37606#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37607#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:26:12,380 INFO L290 TraceCheckUtils]: 36: Hoare triple {37607#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37564#false} is VALID [2022-04-27 22:26:12,380 INFO L290 TraceCheckUtils]: 37: Hoare triple {37564#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,380 INFO L290 TraceCheckUtils]: 38: Hoare triple {37564#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L290 TraceCheckUtils]: 39: Hoare triple {37564#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {37564#false} {37563#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L290 TraceCheckUtils]: 41: Hoare triple {37564#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L272 TraceCheckUtils]: 42: Hoare triple {37564#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L290 TraceCheckUtils]: 43: Hoare triple {37564#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L290 TraceCheckUtils]: 44: Hoare triple {37564#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L290 TraceCheckUtils]: 45: Hoare triple {37564#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,381 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:26:12,381 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:12,381 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1288438863] [2022-04-27 22:26:12,381 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1288438863] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:12,381 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1042210479] [2022-04-27 22:26:12,382 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:26:12,382 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:12,382 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:12,387 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:12,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-27 22:26:12,452 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:26:12,452 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:26:12,453 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 22:26:12,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:12,462 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:12,650 INFO L272 TraceCheckUtils]: 0: Hoare triple {37563#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {37563#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {37563#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37563#true} {37563#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L272 TraceCheckUtils]: 4: Hoare triple {37563#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 5: Hoare triple {37563#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 6: Hoare triple {37563#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L272 TraceCheckUtils]: 7: Hoare triple {37563#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 8: Hoare triple {37563#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 9: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 10: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,651 INFO L290 TraceCheckUtils]: 11: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 12: Hoare triple {37563#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 13: Hoare triple {37563#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 14: Hoare triple {37563#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 15: Hoare triple {37563#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 16: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 17: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 18: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 19: Hoare triple {37563#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 20: Hoare triple {37563#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 21: Hoare triple {37563#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {37563#true} {37563#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L290 TraceCheckUtils]: 23: Hoare triple {37563#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {37563#true} is VALID [2022-04-27 22:26:12,652 INFO L272 TraceCheckUtils]: 24: Hoare triple {37563#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,653 INFO L290 TraceCheckUtils]: 25: Hoare triple {37563#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {37600#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:26:12,653 INFO L290 TraceCheckUtils]: 26: Hoare triple {37600#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37601#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:26:12,654 INFO L290 TraceCheckUtils]: 27: Hoare triple {37601#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37602#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:26:12,654 INFO L290 TraceCheckUtils]: 28: Hoare triple {37602#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,654 INFO L290 TraceCheckUtils]: 29: Hoare triple {37603#(<= student_version_~i~1 3)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,655 INFO L290 TraceCheckUtils]: 30: Hoare triple {37603#(<= student_version_~i~1 3)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,655 INFO L290 TraceCheckUtils]: 31: Hoare triple {37603#(<= student_version_~i~1 3)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,655 INFO L290 TraceCheckUtils]: 32: Hoare triple {37603#(<= student_version_~i~1 3)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37707#(and (<= student_version_~i~1 3) (<= 0 student_version_~x~1))} is VALID [2022-04-27 22:26:12,656 INFO L290 TraceCheckUtils]: 33: Hoare triple {37707#(and (<= student_version_~i~1 3) (<= 0 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37711#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 3))} is VALID [2022-04-27 22:26:12,656 INFO L290 TraceCheckUtils]: 34: Hoare triple {37711#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37715#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 3))} is VALID [2022-04-27 22:26:12,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {37715#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37719#(and (<= student_version_~i~1 3) (<= 3 student_version_~x~1))} is VALID [2022-04-27 22:26:12,657 INFO L290 TraceCheckUtils]: 36: Hoare triple {37719#(and (<= student_version_~i~1 3) (<= 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37564#false} is VALID [2022-04-27 22:26:12,657 INFO L290 TraceCheckUtils]: 37: Hoare triple {37564#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,657 INFO L290 TraceCheckUtils]: 38: Hoare triple {37564#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {37564#false} is VALID [2022-04-27 22:26:12,657 INFO L290 TraceCheckUtils]: 39: Hoare triple {37564#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,657 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {37564#false} {37563#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {37564#false} is VALID [2022-04-27 22:26:12,657 INFO L290 TraceCheckUtils]: 41: Hoare triple {37564#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {37564#false} is VALID [2022-04-27 22:26:12,657 INFO L272 TraceCheckUtils]: 42: Hoare triple {37564#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {37564#false} is VALID [2022-04-27 22:26:12,658 INFO L290 TraceCheckUtils]: 43: Hoare triple {37564#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {37564#false} is VALID [2022-04-27 22:26:12,658 INFO L290 TraceCheckUtils]: 44: Hoare triple {37564#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,658 INFO L290 TraceCheckUtils]: 45: Hoare triple {37564#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,658 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:26:12,658 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:12,798 INFO L290 TraceCheckUtils]: 45: Hoare triple {37564#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L290 TraceCheckUtils]: 44: Hoare triple {37564#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L290 TraceCheckUtils]: 43: Hoare triple {37564#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L272 TraceCheckUtils]: 42: Hoare triple {37564#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L290 TraceCheckUtils]: 41: Hoare triple {37564#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {37564#false} {37563#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L290 TraceCheckUtils]: 39: Hoare triple {37564#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L290 TraceCheckUtils]: 38: Hoare triple {37564#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L290 TraceCheckUtils]: 37: Hoare triple {37564#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {37564#false} is VALID [2022-04-27 22:26:12,799 INFO L290 TraceCheckUtils]: 36: Hoare triple {37607#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37564#false} is VALID [2022-04-27 22:26:12,800 INFO L290 TraceCheckUtils]: 35: Hoare triple {37606#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37607#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:26:12,800 INFO L290 TraceCheckUtils]: 34: Hoare triple {37605#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37606#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:26:12,801 INFO L290 TraceCheckUtils]: 33: Hoare triple {37604#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37605#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:26:12,801 INFO L290 TraceCheckUtils]: 32: Hoare triple {37603#(<= student_version_~i~1 3)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {37604#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:26:12,801 INFO L290 TraceCheckUtils]: 31: Hoare triple {37603#(<= student_version_~i~1 3)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,802 INFO L290 TraceCheckUtils]: 30: Hoare triple {37603#(<= student_version_~i~1 3)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,802 INFO L290 TraceCheckUtils]: 29: Hoare triple {37603#(<= student_version_~i~1 3)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,802 INFO L290 TraceCheckUtils]: 28: Hoare triple {37602#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37603#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:26:12,803 INFO L290 TraceCheckUtils]: 27: Hoare triple {37601#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37602#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:26:12,803 INFO L290 TraceCheckUtils]: 26: Hoare triple {37600#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {37601#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 25: Hoare triple {37563#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {37600#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:26:12,804 INFO L272 TraceCheckUtils]: 24: Hoare triple {37563#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 23: Hoare triple {37563#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {37563#true} {37563#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 21: Hoare triple {37563#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 20: Hoare triple {37563#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 19: Hoare triple {37563#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 18: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 17: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 16: Hoare triple {37563#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 15: Hoare triple {37563#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 14: Hoare triple {37563#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 13: Hoare triple {37563#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,804 INFO L290 TraceCheckUtils]: 12: Hoare triple {37563#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 11: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 10: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 9: Hoare triple {37563#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 8: Hoare triple {37563#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L272 TraceCheckUtils]: 7: Hoare triple {37563#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 6: Hoare triple {37563#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 5: Hoare triple {37563#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L272 TraceCheckUtils]: 4: Hoare triple {37563#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37563#true} {37563#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 2: Hoare triple {37563#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L290 TraceCheckUtils]: 1: Hoare triple {37563#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L272 TraceCheckUtils]: 0: Hoare triple {37563#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {37563#true} is VALID [2022-04-27 22:26:12,805 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:26:12,806 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1042210479] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:12,806 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:12,806 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 15 [2022-04-27 22:26:12,806 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1857681374] [2022-04-27 22:26:12,806 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:12,806 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 14 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 46 [2022-04-27 22:26:12,806 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:12,806 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 14 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:26:12,834 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:12,834 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 22:26:12,834 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:12,834 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 22:26:12,835 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2022-04-27 22:26:12,835 INFO L87 Difference]: Start difference. First operand 246 states and 286 transitions. Second operand has 15 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 14 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:26:14,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:14,417 INFO L93 Difference]: Finished difference Result 332 states and 391 transitions. [2022-04-27 22:26:14,417 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-27 22:26:14,418 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 14 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 46 [2022-04-27 22:26:14,418 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:14,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 14 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:26:14,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 82 transitions. [2022-04-27 22:26:14,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 14 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:26:14,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 82 transitions. [2022-04-27 22:26:14,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 82 transitions. [2022-04-27 22:26:14,455 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:14,460 INFO L225 Difference]: With dead ends: 332 [2022-04-27 22:26:14,460 INFO L226 Difference]: Without dead ends: 302 [2022-04-27 22:26:14,461 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 93 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 143 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=223, Invalid=589, Unknown=0, NotChecked=0, Total=812 [2022-04-27 22:26:14,461 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 98 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 262 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 102 SdHoareTripleChecker+Valid, 72 SdHoareTripleChecker+Invalid, 280 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 262 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:14,461 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [102 Valid, 72 Invalid, 280 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 262 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:26:14,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 302 states. [2022-04-27 22:26:15,673 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 302 to 284. [2022-04-27 22:26:15,673 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:15,674 INFO L82 GeneralOperation]: Start isEquivalent. First operand 302 states. Second operand has 284 states, 245 states have (on average 1.1918367346938776) internal successors, (292), 265 states have internal predecessors, (292), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:15,674 INFO L74 IsIncluded]: Start isIncluded. First operand 302 states. Second operand has 284 states, 245 states have (on average 1.1918367346938776) internal successors, (292), 265 states have internal predecessors, (292), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:15,674 INFO L87 Difference]: Start difference. First operand 302 states. Second operand has 284 states, 245 states have (on average 1.1918367346938776) internal successors, (292), 265 states have internal predecessors, (292), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:15,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:15,678 INFO L93 Difference]: Finished difference Result 302 states and 349 transitions. [2022-04-27 22:26:15,678 INFO L276 IsEmpty]: Start isEmpty. Operand 302 states and 349 transitions. [2022-04-27 22:26:15,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:15,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:15,679 INFO L74 IsIncluded]: Start isIncluded. First operand has 284 states, 245 states have (on average 1.1918367346938776) internal successors, (292), 265 states have internal predecessors, (292), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) Second operand 302 states. [2022-04-27 22:26:15,679 INFO L87 Difference]: Start difference. First operand has 284 states, 245 states have (on average 1.1918367346938776) internal successors, (292), 265 states have internal predecessors, (292), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) Second operand 302 states. [2022-04-27 22:26:15,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:15,690 INFO L93 Difference]: Finished difference Result 302 states and 349 transitions. [2022-04-27 22:26:15,690 INFO L276 IsEmpty]: Start isEmpty. Operand 302 states and 349 transitions. [2022-04-27 22:26:15,691 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:15,691 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:15,691 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:15,691 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:15,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 284 states, 245 states have (on average 1.1918367346938776) internal successors, (292), 265 states have internal predecessors, (292), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:15,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 284 states to 284 states and 331 transitions. [2022-04-27 22:26:15,696 INFO L78 Accepts]: Start accepts. Automaton has 284 states and 331 transitions. Word has length 46 [2022-04-27 22:26:15,696 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:15,696 INFO L495 AbstractCegarLoop]: Abstraction has 284 states and 331 transitions. [2022-04-27 22:26:15,696 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 14 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:26:15,696 INFO L276 IsEmpty]: Start isEmpty. Operand 284 states and 331 transitions. [2022-04-27 22:26:15,697 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-27 22:26:15,697 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:15,697 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 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, 1] [2022-04-27 22:26:15,716 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:15,916 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable41,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:15,916 INFO L420 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:15,916 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:15,916 INFO L85 PathProgramCache]: Analyzing trace with hash -701840234, now seen corresponding path program 33 times [2022-04-27 22:26:15,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:15,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1013839232] [2022-04-27 22:26:15,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:15,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:15,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:15,938 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:15,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:15,941 INFO L290 TraceCheckUtils]: 0: Hoare triple {39429#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {39393#true} is VALID [2022-04-27 22:26:15,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {39393#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:15,941 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {39393#true} {39393#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:15,941 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:15,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:15,992 INFO L290 TraceCheckUtils]: 0: Hoare triple {39393#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {39430#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:26:15,992 INFO L290 TraceCheckUtils]: 1: Hoare triple {39430#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39431#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:26:15,993 INFO L290 TraceCheckUtils]: 2: Hoare triple {39431#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39432#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:26:15,993 INFO L290 TraceCheckUtils]: 3: Hoare triple {39432#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:15,993 INFO L290 TraceCheckUtils]: 4: Hoare triple {39433#(<= correct_version_~i~0 3)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:15,994 INFO L290 TraceCheckUtils]: 5: Hoare triple {39433#(<= correct_version_~i~0 3)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:15,994 INFO L290 TraceCheckUtils]: 6: Hoare triple {39433#(<= correct_version_~i~0 3)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:15,994 INFO L290 TraceCheckUtils]: 7: Hoare triple {39433#(<= correct_version_~i~0 3)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39434#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:26:15,995 INFO L290 TraceCheckUtils]: 8: Hoare triple {39434#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39435#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:26:15,995 INFO L290 TraceCheckUtils]: 9: Hoare triple {39435#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39436#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:26:15,996 INFO L290 TraceCheckUtils]: 10: Hoare triple {39436#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39437#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:26:15,996 INFO L290 TraceCheckUtils]: 11: Hoare triple {39437#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39394#false} is VALID [2022-04-27 22:26:15,996 INFO L290 TraceCheckUtils]: 12: Hoare triple {39394#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:15,996 INFO L290 TraceCheckUtils]: 13: Hoare triple {39394#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {39394#false} is VALID [2022-04-27 22:26:15,996 INFO L290 TraceCheckUtils]: 14: Hoare triple {39394#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:15,996 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {39394#false} {39393#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:15,996 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-04-27 22:26:16,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 0: Hoare triple {39393#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 1: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 2: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 3: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 4: Hoare triple {39393#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 5: Hoare triple {39393#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 6: Hoare triple {39393#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 7: Hoare triple {39393#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 8: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 9: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,004 INFO L290 TraceCheckUtils]: 10: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,005 INFO L290 TraceCheckUtils]: 11: Hoare triple {39393#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,005 INFO L290 TraceCheckUtils]: 12: Hoare triple {39393#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {39393#true} is VALID [2022-04-27 22:26:16,005 INFO L290 TraceCheckUtils]: 13: Hoare triple {39393#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,005 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {39393#true} {39394#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,005 INFO L272 TraceCheckUtils]: 0: Hoare triple {39393#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39429#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:16,005 INFO L290 TraceCheckUtils]: 1: Hoare triple {39429#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {39393#true} is VALID [2022-04-27 22:26:16,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {39393#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,005 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39393#true} {39393#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,005 INFO L272 TraceCheckUtils]: 4: Hoare triple {39393#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {39393#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,006 INFO L290 TraceCheckUtils]: 6: Hoare triple {39393#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,006 INFO L272 TraceCheckUtils]: 7: Hoare triple {39393#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,006 INFO L290 TraceCheckUtils]: 8: Hoare triple {39393#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {39430#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:26:16,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {39430#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39431#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:26:16,007 INFO L290 TraceCheckUtils]: 10: Hoare triple {39431#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39432#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:26:16,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {39432#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,008 INFO L290 TraceCheckUtils]: 12: Hoare triple {39433#(<= correct_version_~i~0 3)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {39433#(<= correct_version_~i~0 3)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {39433#(<= correct_version_~i~0 3)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {39433#(<= correct_version_~i~0 3)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39434#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:26:16,009 INFO L290 TraceCheckUtils]: 16: Hoare triple {39434#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39435#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:26:16,009 INFO L290 TraceCheckUtils]: 17: Hoare triple {39435#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39436#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:26:16,010 INFO L290 TraceCheckUtils]: 18: Hoare triple {39436#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39437#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:26:16,010 INFO L290 TraceCheckUtils]: 19: Hoare triple {39437#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39394#false} is VALID [2022-04-27 22:26:16,010 INFO L290 TraceCheckUtils]: 20: Hoare triple {39394#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,010 INFO L290 TraceCheckUtils]: 21: Hoare triple {39394#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {39394#false} is VALID [2022-04-27 22:26:16,010 INFO L290 TraceCheckUtils]: 22: Hoare triple {39394#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,010 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {39394#false} {39393#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,010 INFO L290 TraceCheckUtils]: 24: Hoare triple {39394#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {39394#false} is VALID [2022-04-27 22:26:16,010 INFO L272 TraceCheckUtils]: 25: Hoare triple {39394#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 26: Hoare triple {39393#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 27: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 28: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 29: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 30: Hoare triple {39393#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 31: Hoare triple {39393#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 32: Hoare triple {39393#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 33: Hoare triple {39393#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 34: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 35: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 36: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,011 INFO L290 TraceCheckUtils]: 37: Hoare triple {39393#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,012 INFO L290 TraceCheckUtils]: 38: Hoare triple {39393#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {39393#true} is VALID [2022-04-27 22:26:16,012 INFO L290 TraceCheckUtils]: 39: Hoare triple {39393#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,012 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {39393#true} {39394#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,012 INFO L290 TraceCheckUtils]: 41: Hoare triple {39394#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {39394#false} is VALID [2022-04-27 22:26:16,012 INFO L272 TraceCheckUtils]: 42: Hoare triple {39394#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {39394#false} is VALID [2022-04-27 22:26:16,012 INFO L290 TraceCheckUtils]: 43: Hoare triple {39394#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {39394#false} is VALID [2022-04-27 22:26:16,012 INFO L290 TraceCheckUtils]: 44: Hoare triple {39394#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,012 INFO L290 TraceCheckUtils]: 45: Hoare triple {39394#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,012 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:26:16,012 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:16,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1013839232] [2022-04-27 22:26:16,013 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1013839232] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:16,013 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [312708622] [2022-04-27 22:26:16,013 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:26:16,013 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:16,013 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:16,028 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:16,029 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-27 22:26:16,095 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 22:26:16,095 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:26:16,096 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 22:26:16,104 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:16,105 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:16,265 INFO L272 TraceCheckUtils]: 0: Hoare triple {39393#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {39393#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L290 TraceCheckUtils]: 2: Hoare triple {39393#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39393#true} {39393#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L272 TraceCheckUtils]: 4: Hoare triple {39393#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {39393#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L290 TraceCheckUtils]: 6: Hoare triple {39393#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L272 TraceCheckUtils]: 7: Hoare triple {39393#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,266 INFO L290 TraceCheckUtils]: 8: Hoare triple {39393#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {39430#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:26:16,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {39430#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39431#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:26:16,267 INFO L290 TraceCheckUtils]: 10: Hoare triple {39431#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39432#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:26:16,268 INFO L290 TraceCheckUtils]: 11: Hoare triple {39432#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,268 INFO L290 TraceCheckUtils]: 12: Hoare triple {39433#(<= correct_version_~i~0 3)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,268 INFO L290 TraceCheckUtils]: 13: Hoare triple {39433#(<= correct_version_~i~0 3)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,269 INFO L290 TraceCheckUtils]: 14: Hoare triple {39433#(<= correct_version_~i~0 3)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,269 INFO L290 TraceCheckUtils]: 15: Hoare triple {39433#(<= correct_version_~i~0 3)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39486#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 3))} is VALID [2022-04-27 22:26:16,269 INFO L290 TraceCheckUtils]: 16: Hoare triple {39486#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39490#(and (<= 1 correct_version_~x~0) (<= correct_version_~i~0 3))} is VALID [2022-04-27 22:26:16,270 INFO L290 TraceCheckUtils]: 17: Hoare triple {39490#(and (<= 1 correct_version_~x~0) (<= correct_version_~i~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39494#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 3))} is VALID [2022-04-27 22:26:16,270 INFO L290 TraceCheckUtils]: 18: Hoare triple {39494#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39498#(and (<= 3 correct_version_~x~0) (<= correct_version_~i~0 3))} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 19: Hoare triple {39498#(and (<= 3 correct_version_~x~0) (<= correct_version_~i~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 20: Hoare triple {39394#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 21: Hoare triple {39394#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 22: Hoare triple {39394#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {39394#false} {39393#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 24: Hoare triple {39394#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L272 TraceCheckUtils]: 25: Hoare triple {39394#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 26: Hoare triple {39394#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 27: Hoare triple {39394#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 28: Hoare triple {39394#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 29: Hoare triple {39394#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39394#false} is VALID [2022-04-27 22:26:16,271 INFO L290 TraceCheckUtils]: 30: Hoare triple {39394#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 31: Hoare triple {39394#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 32: Hoare triple {39394#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 33: Hoare triple {39394#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 34: Hoare triple {39394#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 35: Hoare triple {39394#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 36: Hoare triple {39394#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 37: Hoare triple {39394#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 38: Hoare triple {39394#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 39: Hoare triple {39394#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {39394#false} {39394#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 41: Hoare triple {39394#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L272 TraceCheckUtils]: 42: Hoare triple {39394#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 43: Hoare triple {39394#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {39394#false} is VALID [2022-04-27 22:26:16,272 INFO L290 TraceCheckUtils]: 44: Hoare triple {39394#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,273 INFO L290 TraceCheckUtils]: 45: Hoare triple {39394#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,273 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:26:16,273 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:16,404 INFO L290 TraceCheckUtils]: 45: Hoare triple {39394#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 44: Hoare triple {39394#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 43: Hoare triple {39394#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {39394#false} is VALID [2022-04-27 22:26:16,405 INFO L272 TraceCheckUtils]: 42: Hoare triple {39394#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {39394#false} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 41: Hoare triple {39394#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {39394#false} is VALID [2022-04-27 22:26:16,405 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {39393#true} {39394#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 39: Hoare triple {39393#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 38: Hoare triple {39393#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 37: Hoare triple {39393#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 36: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 35: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 34: Hoare triple {39393#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 33: Hoare triple {39393#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 32: Hoare triple {39393#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,405 INFO L290 TraceCheckUtils]: 31: Hoare triple {39393#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {39393#true} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 30: Hoare triple {39393#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 29: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 28: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 27: Hoare triple {39393#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {39393#true} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 26: Hoare triple {39393#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {39393#true} is VALID [2022-04-27 22:26:16,406 INFO L272 TraceCheckUtils]: 25: Hoare triple {39394#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 24: Hoare triple {39394#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {39394#false} is VALID [2022-04-27 22:26:16,406 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {39394#false} {39393#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {39394#false} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 22: Hoare triple {39394#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 21: Hoare triple {39394#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {39394#false} is VALID [2022-04-27 22:26:16,406 INFO L290 TraceCheckUtils]: 20: Hoare triple {39394#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {39394#false} is VALID [2022-04-27 22:26:16,407 INFO L290 TraceCheckUtils]: 19: Hoare triple {39437#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39394#false} is VALID [2022-04-27 22:26:16,407 INFO L290 TraceCheckUtils]: 18: Hoare triple {39436#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39437#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:26:16,408 INFO L290 TraceCheckUtils]: 17: Hoare triple {39435#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39436#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:26:16,408 INFO L290 TraceCheckUtils]: 16: Hoare triple {39434#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39435#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:26:16,413 INFO L290 TraceCheckUtils]: 15: Hoare triple {39433#(<= correct_version_~i~0 3)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {39434#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:26:16,414 INFO L290 TraceCheckUtils]: 14: Hoare triple {39433#(<= correct_version_~i~0 3)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,414 INFO L290 TraceCheckUtils]: 13: Hoare triple {39433#(<= correct_version_~i~0 3)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,414 INFO L290 TraceCheckUtils]: 12: Hoare triple {39433#(<= correct_version_~i~0 3)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,415 INFO L290 TraceCheckUtils]: 11: Hoare triple {39432#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39433#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:26:16,415 INFO L290 TraceCheckUtils]: 10: Hoare triple {39431#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39432#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:26:16,415 INFO L290 TraceCheckUtils]: 9: Hoare triple {39430#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {39431#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:26:16,416 INFO L290 TraceCheckUtils]: 8: Hoare triple {39393#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {39430#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:26:16,416 INFO L272 TraceCheckUtils]: 7: Hoare triple {39393#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L290 TraceCheckUtils]: 6: Hoare triple {39393#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L290 TraceCheckUtils]: 5: Hoare triple {39393#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L272 TraceCheckUtils]: 4: Hoare triple {39393#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39393#true} {39393#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L290 TraceCheckUtils]: 2: Hoare triple {39393#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L290 TraceCheckUtils]: 1: Hoare triple {39393#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L272 TraceCheckUtils]: 0: Hoare triple {39393#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {39393#true} is VALID [2022-04-27 22:26:16,416 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-27 22:26:16,417 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [312708622] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:16,417 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:16,417 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 15 [2022-04-27 22:26:16,417 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2147031114] [2022-04-27 22:26:16,417 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:16,417 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.3333333333333335) internal successors, (50), 14 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 46 [2022-04-27 22:26:16,418 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:16,418 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 3.3333333333333335) internal successors, (50), 14 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:16,449 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:16,450 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 22:26:16,450 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:16,450 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 22:26:16,450 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2022-04-27 22:26:16,450 INFO L87 Difference]: Start difference. First operand 284 states and 331 transitions. Second operand has 15 states, 15 states have (on average 3.3333333333333335) internal successors, (50), 14 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:18,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:18,048 INFO L93 Difference]: Finished difference Result 525 states and 613 transitions. [2022-04-27 22:26:18,048 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-27 22:26:18,048 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.3333333333333335) internal successors, (50), 14 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 46 [2022-04-27 22:26:18,048 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:18,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.3333333333333335) internal successors, (50), 14 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:18,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 95 transitions. [2022-04-27 22:26:18,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.3333333333333335) internal successors, (50), 14 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:18,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 95 transitions. [2022-04-27 22:26:18,049 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 95 transitions. [2022-04-27 22:26:18,091 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:18,097 INFO L225 Difference]: With dead ends: 525 [2022-04-27 22:26:18,097 INFO L226 Difference]: Without dead ends: 340 [2022-04-27 22:26:18,099 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 93 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 143 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=223, Invalid=589, Unknown=0, NotChecked=0, Total=812 [2022-04-27 22:26:18,099 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 138 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 141 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 143 SdHoareTripleChecker+Valid, 52 SdHoareTripleChecker+Invalid, 164 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 141 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:18,099 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [143 Valid, 52 Invalid, 164 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 141 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:26:18,099 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 340 states. [2022-04-27 22:26:19,651 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 340 to 322. [2022-04-27 22:26:19,651 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:19,651 INFO L82 GeneralOperation]: Start isEquivalent. First operand 340 states. Second operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:19,652 INFO L74 IsIncluded]: Start isIncluded. First operand 340 states. Second operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:19,653 INFO L87 Difference]: Start difference. First operand 340 states. Second operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:19,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:19,659 INFO L93 Difference]: Finished difference Result 340 states and 394 transitions. [2022-04-27 22:26:19,659 INFO L276 IsEmpty]: Start isEmpty. Operand 340 states and 394 transitions. [2022-04-27 22:26:19,660 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:19,660 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:19,662 INFO L74 IsIncluded]: Start isIncluded. First operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) Second operand 340 states. [2022-04-27 22:26:19,662 INFO L87 Difference]: Start difference. First operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) Second operand 340 states. [2022-04-27 22:26:19,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:19,692 INFO L93 Difference]: Finished difference Result 340 states and 394 transitions. [2022-04-27 22:26:19,692 INFO L276 IsEmpty]: Start isEmpty. Operand 340 states and 394 transitions. [2022-04-27 22:26:19,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:19,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:19,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:19,693 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:19,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (24), 13 states have call predecessors, (24), 13 states have call successors, (24) [2022-04-27 22:26:19,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 322 states to 322 states and 376 transitions. [2022-04-27 22:26:19,699 INFO L78 Accepts]: Start accepts. Automaton has 322 states and 376 transitions. Word has length 46 [2022-04-27 22:26:19,699 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:19,699 INFO L495 AbstractCegarLoop]: Abstraction has 322 states and 376 transitions. [2022-04-27 22:26:19,699 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 3.3333333333333335) internal successors, (50), 14 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:19,699 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 376 transitions. [2022-04-27 22:26:19,700 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-27 22:26:19,700 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:19,700 INFO L195 NwaCegarLoop]: trace histogram [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, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:26:19,718 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:19,900 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable42 [2022-04-27 22:26:19,900 INFO L420 AbstractCegarLoop]: === Iteration 44 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:19,901 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:19,901 INFO L85 PathProgramCache]: Analyzing trace with hash 1725883340, now seen corresponding path program 34 times [2022-04-27 22:26:19,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:19,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [446638339] [2022-04-27 22:26:19,901 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:19,901 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:19,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:19,975 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:19,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:19,978 INFO L290 TraceCheckUtils]: 0: Hoare triple {41695#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {41652#true} is VALID [2022-04-27 22:26:19,978 INFO L290 TraceCheckUtils]: 1: Hoare triple {41652#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:19,978 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41652#true} {41652#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:19,978 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:19,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:20,149 INFO L290 TraceCheckUtils]: 0: Hoare triple {41652#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,149 INFO L290 TraceCheckUtils]: 1: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,149 INFO L290 TraceCheckUtils]: 2: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,150 INFO L290 TraceCheckUtils]: 3: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:20,150 INFO L290 TraceCheckUtils]: 4: Hoare triple {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:20,150 INFO L290 TraceCheckUtils]: 5: Hoare triple {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:20,151 INFO L290 TraceCheckUtils]: 6: Hoare triple {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:20,151 INFO L290 TraceCheckUtils]: 7: Hoare triple {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,152 INFO L290 TraceCheckUtils]: 8: Hoare triple {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,152 INFO L290 TraceCheckUtils]: 9: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,152 INFO L290 TraceCheckUtils]: 10: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41703#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:26:20,152 INFO L290 TraceCheckUtils]: 11: Hoare triple {41703#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:20,153 INFO L290 TraceCheckUtils]: 12: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:20,153 INFO L290 TraceCheckUtils]: 13: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:20,153 INFO L290 TraceCheckUtils]: 14: Hoare triple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:20,154 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {41652#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {41673#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:20,154 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-04-27 22:26:20,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:20,337 INFO L290 TraceCheckUtils]: 0: Hoare triple {41652#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,338 INFO L290 TraceCheckUtils]: 2: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,338 INFO L290 TraceCheckUtils]: 3: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:20,338 INFO L290 TraceCheckUtils]: 4: Hoare triple {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:20,339 INFO L290 TraceCheckUtils]: 5: Hoare triple {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:20,339 INFO L290 TraceCheckUtils]: 6: Hoare triple {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:20,339 INFO L290 TraceCheckUtils]: 7: Hoare triple {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:26:20,340 INFO L290 TraceCheckUtils]: 8: Hoare triple {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:20,340 INFO L290 TraceCheckUtils]: 9: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:20,340 INFO L290 TraceCheckUtils]: 10: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41713#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:26:20,341 INFO L290 TraceCheckUtils]: 11: Hoare triple {41713#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:20,341 INFO L290 TraceCheckUtils]: 12: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:20,341 INFO L290 TraceCheckUtils]: 13: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:20,341 INFO L290 TraceCheckUtils]: 14: Hoare triple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:20,342 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {41691#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:20,342 INFO L272 TraceCheckUtils]: 0: Hoare triple {41652#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41695#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:20,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {41695#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {41652#true} is VALID [2022-04-27 22:26:20,342 INFO L290 TraceCheckUtils]: 2: Hoare triple {41652#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,343 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41652#true} {41652#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,343 INFO L272 TraceCheckUtils]: 4: Hoare triple {41652#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,343 INFO L290 TraceCheckUtils]: 5: Hoare triple {41652#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:20,343 INFO L290 TraceCheckUtils]: 6: Hoare triple {41652#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,343 INFO L272 TraceCheckUtils]: 7: Hoare triple {41652#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:20,352 INFO L290 TraceCheckUtils]: 8: Hoare triple {41652#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,353 INFO L290 TraceCheckUtils]: 9: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,353 INFO L290 TraceCheckUtils]: 10: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,353 INFO L290 TraceCheckUtils]: 11: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:20,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:20,354 INFO L290 TraceCheckUtils]: 13: Hoare triple {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:20,355 INFO L290 TraceCheckUtils]: 14: Hoare triple {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:20,355 INFO L290 TraceCheckUtils]: 15: Hoare triple {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,355 INFO L290 TraceCheckUtils]: 16: Hoare triple {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,356 INFO L290 TraceCheckUtils]: 17: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,356 INFO L290 TraceCheckUtils]: 18: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41703#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:26:20,356 INFO L290 TraceCheckUtils]: 19: Hoare triple {41703#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:20,356 INFO L290 TraceCheckUtils]: 20: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:20,357 INFO L290 TraceCheckUtils]: 21: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:20,357 INFO L290 TraceCheckUtils]: 22: Hoare triple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:20,358 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {41652#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {41673#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:20,358 INFO L290 TraceCheckUtils]: 24: Hoare triple {41673#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:20,358 INFO L272 TraceCheckUtils]: 25: Hoare triple {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:20,358 INFO L290 TraceCheckUtils]: 26: Hoare triple {41652#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,359 INFO L290 TraceCheckUtils]: 27: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,359 INFO L290 TraceCheckUtils]: 28: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,359 INFO L290 TraceCheckUtils]: 29: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:20,360 INFO L290 TraceCheckUtils]: 30: Hoare triple {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:20,361 INFO L290 TraceCheckUtils]: 31: Hoare triple {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:20,361 INFO L290 TraceCheckUtils]: 32: Hoare triple {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:20,361 INFO L290 TraceCheckUtils]: 33: Hoare triple {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:26:20,362 INFO L290 TraceCheckUtils]: 34: Hoare triple {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:20,362 INFO L290 TraceCheckUtils]: 35: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:20,362 INFO L290 TraceCheckUtils]: 36: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41713#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:26:20,362 INFO L290 TraceCheckUtils]: 37: Hoare triple {41713#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:20,363 INFO L290 TraceCheckUtils]: 38: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:20,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:20,364 INFO L290 TraceCheckUtils]: 40: Hoare triple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:20,364 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {41691#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:20,364 INFO L290 TraceCheckUtils]: 42: Hoare triple {41691#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {41692#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:26:20,365 INFO L272 TraceCheckUtils]: 43: Hoare triple {41692#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {41693#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:26:20,365 INFO L290 TraceCheckUtils]: 44: Hoare triple {41693#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {41694#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:26:20,365 INFO L290 TraceCheckUtils]: 45: Hoare triple {41694#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {41653#false} is VALID [2022-04-27 22:26:20,365 INFO L290 TraceCheckUtils]: 46: Hoare triple {41653#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41653#false} is VALID [2022-04-27 22:26:20,366 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 44 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:26:20,366 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:20,366 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [446638339] [2022-04-27 22:26:20,366 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [446638339] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:20,366 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1937141884] [2022-04-27 22:26:20,366 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:26:20,366 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:20,366 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:20,367 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:20,368 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-27 22:26:20,445 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:26:20,445 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:26:20,446 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 51 conjunts are in the unsatisfiable core [2022-04-27 22:26:20,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:20,462 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:20,863 INFO L272 TraceCheckUtils]: 0: Hoare triple {41652#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {41652#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {41652#true} is VALID [2022-04-27 22:26:20,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {41652#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,864 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41652#true} {41652#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,864 INFO L272 TraceCheckUtils]: 4: Hoare triple {41652#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {41652#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:20,864 INFO L290 TraceCheckUtils]: 6: Hoare triple {41652#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:20,864 INFO L272 TraceCheckUtils]: 7: Hoare triple {41652#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:20,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {41652#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,865 INFO L290 TraceCheckUtils]: 9: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,865 INFO L290 TraceCheckUtils]: 10: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,865 INFO L290 TraceCheckUtils]: 11: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:20,866 INFO L290 TraceCheckUtils]: 12: Hoare triple {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:20,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:20,866 INFO L290 TraceCheckUtils]: 14: Hoare triple {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:20,867 INFO L290 TraceCheckUtils]: 15: Hoare triple {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,867 INFO L290 TraceCheckUtils]: 16: Hoare triple {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,867 INFO L290 TraceCheckUtils]: 17: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,867 INFO L290 TraceCheckUtils]: 18: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41773#(and (<= correct_version_~j~0 6) (= correct_version_~y~0 0) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:20,868 INFO L290 TraceCheckUtils]: 19: Hoare triple {41773#(and (<= correct_version_~j~0 6) (= correct_version_~y~0 0) (<= 6 correct_version_~j~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:20,868 INFO L290 TraceCheckUtils]: 20: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:20,868 INFO L290 TraceCheckUtils]: 21: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:20,868 INFO L290 TraceCheckUtils]: 22: Hoare triple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:20,869 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {41652#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {41673#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:20,869 INFO L290 TraceCheckUtils]: 24: Hoare triple {41673#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:20,869 INFO L272 TraceCheckUtils]: 25: Hoare triple {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:20,870 INFO L290 TraceCheckUtils]: 26: Hoare triple {41652#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,870 INFO L290 TraceCheckUtils]: 27: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,870 INFO L290 TraceCheckUtils]: 28: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:20,871 INFO L290 TraceCheckUtils]: 29: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:20,871 INFO L290 TraceCheckUtils]: 30: Hoare triple {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:20,871 INFO L290 TraceCheckUtils]: 31: Hoare triple {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:20,872 INFO L290 TraceCheckUtils]: 32: Hoare triple {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:20,872 INFO L290 TraceCheckUtils]: 33: Hoare triple {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:26:20,872 INFO L290 TraceCheckUtils]: 34: Hoare triple {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:20,873 INFO L290 TraceCheckUtils]: 35: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:20,873 INFO L290 TraceCheckUtils]: 36: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41828#(and (= student_version_~y~1 0) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:20,873 INFO L290 TraceCheckUtils]: 37: Hoare triple {41828#(and (= student_version_~y~1 0) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:20,873 INFO L290 TraceCheckUtils]: 38: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:20,874 INFO L290 TraceCheckUtils]: 39: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:20,874 INFO L290 TraceCheckUtils]: 40: Hoare triple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:20,874 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {41844#(and (<= 6 |main_#t~ret9|) (<= 6 main_~n_stones1~0) (<= |main_#t~ret9| 6) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:20,875 INFO L290 TraceCheckUtils]: 42: Hoare triple {41844#(and (<= 6 |main_#t~ret9|) (<= 6 main_~n_stones1~0) (<= |main_#t~ret9| 6) (<= main_~n_stones1~0 6))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {41848#(and (<= main_~n_stones2~0 6) (<= 6 main_~n_stones2~0) (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:20,875 INFO L272 TraceCheckUtils]: 43: Hoare triple {41848#(and (<= main_~n_stones2~0 6) (<= 6 main_~n_stones2~0) (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {41852#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:26:20,875 INFO L290 TraceCheckUtils]: 44: Hoare triple {41852#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {41856#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:26:20,875 INFO L290 TraceCheckUtils]: 45: Hoare triple {41856#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {41653#false} is VALID [2022-04-27 22:26:20,876 INFO L290 TraceCheckUtils]: 46: Hoare triple {41653#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41653#false} is VALID [2022-04-27 22:26:20,876 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 44 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:26:20,876 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:21,328 INFO L290 TraceCheckUtils]: 46: Hoare triple {41653#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41653#false} is VALID [2022-04-27 22:26:21,329 INFO L290 TraceCheckUtils]: 45: Hoare triple {41856#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {41653#false} is VALID [2022-04-27 22:26:21,329 INFO L290 TraceCheckUtils]: 44: Hoare triple {41852#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {41856#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:26:21,330 INFO L272 TraceCheckUtils]: 43: Hoare triple {41692#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {41852#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:26:21,330 INFO L290 TraceCheckUtils]: 42: Hoare triple {41691#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {41692#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:26:21,331 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {41691#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:21,331 INFO L290 TraceCheckUtils]: 40: Hoare triple {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:21,332 INFO L290 TraceCheckUtils]: 39: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {41715#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:21,332 INFO L290 TraceCheckUtils]: 38: Hoare triple {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:21,332 INFO L290 TraceCheckUtils]: 37: Hoare triple {41713#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41714#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:21,333 INFO L290 TraceCheckUtils]: 36: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {41713#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:26:21,333 INFO L290 TraceCheckUtils]: 35: Hoare triple {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:21,334 INFO L290 TraceCheckUtils]: 34: Hoare triple {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41712#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:26:21,334 INFO L290 TraceCheckUtils]: 33: Hoare triple {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41711#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:26:21,335 INFO L290 TraceCheckUtils]: 32: Hoare triple {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41710#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:21,335 INFO L290 TraceCheckUtils]: 31: Hoare triple {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41709#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:21,336 INFO L290 TraceCheckUtils]: 30: Hoare triple {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41708#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:21,336 INFO L290 TraceCheckUtils]: 29: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {41707#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:21,336 INFO L290 TraceCheckUtils]: 28: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:21,337 INFO L290 TraceCheckUtils]: 27: Hoare triple {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:21,337 INFO L290 TraceCheckUtils]: 26: Hoare triple {41652#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {41706#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:21,337 INFO L272 TraceCheckUtils]: 25: Hoare triple {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:21,338 INFO L290 TraceCheckUtils]: 24: Hoare triple {41673#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {41674#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:21,338 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {41652#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {41673#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:21,339 INFO L290 TraceCheckUtils]: 22: Hoare triple {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:21,339 INFO L290 TraceCheckUtils]: 21: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {41705#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:21,339 INFO L290 TraceCheckUtils]: 20: Hoare triple {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:21,340 INFO L290 TraceCheckUtils]: 19: Hoare triple {41703#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41704#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:21,340 INFO L290 TraceCheckUtils]: 18: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {41703#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:26:21,341 INFO L290 TraceCheckUtils]: 17: Hoare triple {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:21,341 INFO L290 TraceCheckUtils]: 16: Hoare triple {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41702#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:26:21,341 INFO L290 TraceCheckUtils]: 15: Hoare triple {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41701#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:26:21,342 INFO L290 TraceCheckUtils]: 14: Hoare triple {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41700#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:21,342 INFO L290 TraceCheckUtils]: 13: Hoare triple {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41699#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:21,343 INFO L290 TraceCheckUtils]: 12: Hoare triple {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41698#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:21,343 INFO L290 TraceCheckUtils]: 11: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {41697#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:21,344 INFO L290 TraceCheckUtils]: 10: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:21,344 INFO L290 TraceCheckUtils]: 9: Hoare triple {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:21,345 INFO L290 TraceCheckUtils]: 8: Hoare triple {41652#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {41696#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:21,345 INFO L272 TraceCheckUtils]: 7: Hoare triple {41652#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L290 TraceCheckUtils]: 6: Hoare triple {41652#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {41652#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L272 TraceCheckUtils]: 4: Hoare triple {41652#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41652#true} {41652#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L290 TraceCheckUtils]: 2: Hoare triple {41652#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L290 TraceCheckUtils]: 1: Hoare triple {41652#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L272 TraceCheckUtils]: 0: Hoare triple {41652#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41652#true} is VALID [2022-04-27 22:26:21,345 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 44 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:26:21,345 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1937141884] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:21,345 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:21,346 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 28, 28] total 35 [2022-04-27 22:26:21,346 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1235438915] [2022-04-27 22:26:21,346 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:21,346 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 47 [2022-04-27 22:26:21,346 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:21,346 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:21,377 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:21,377 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 35 states [2022-04-27 22:26:21,377 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:21,378 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2022-04-27 22:26:21,378 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=1113, Unknown=0, NotChecked=0, Total=1190 [2022-04-27 22:26:21,378 INFO L87 Difference]: Start difference. First operand 322 states and 376 transitions. Second operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:26,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:26,841 INFO L93 Difference]: Finished difference Result 392 states and 457 transitions. [2022-04-27 22:26:26,841 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-27 22:26:26,841 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 47 [2022-04-27 22:26:26,841 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:26,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:26,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 158 transitions. [2022-04-27 22:26:26,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:26,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 158 transitions. [2022-04-27 22:26:26,852 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 158 transitions. [2022-04-27 22:26:26,944 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:26,958 INFO L225 Difference]: With dead ends: 392 [2022-04-27 22:26:26,958 INFO L226 Difference]: Without dead ends: 386 [2022-04-27 22:26:26,959 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 88 SyntacticMatches, 5 SemanticMatches, 60 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 520 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=217, Invalid=3565, Unknown=0, NotChecked=0, Total=3782 [2022-04-27 22:26:26,960 INFO L413 NwaCegarLoop]: 78 mSDtfsCounter, 169 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 3402 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 174 SdHoareTripleChecker+Valid, 225 SdHoareTripleChecker+Invalid, 3444 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 3402 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:26,960 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [174 Valid, 225 Invalid, 3444 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 3402 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-27 22:26:26,960 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 386 states. [2022-04-27 22:26:28,293 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 386 to 338. [2022-04-27 22:26:28,294 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:28,294 INFO L82 GeneralOperation]: Start isEquivalent. First operand 386 states. Second operand has 338 states, 296 states have (on average 1.1891891891891893) internal successors, (352), 318 states have internal predecessors, (352), 16 states have call successors, (16), 5 states have call predecessors, (16), 25 states have return successors, (27), 14 states have call predecessors, (27), 14 states have call successors, (27) [2022-04-27 22:26:28,294 INFO L74 IsIncluded]: Start isIncluded. First operand 386 states. Second operand has 338 states, 296 states have (on average 1.1891891891891893) internal successors, (352), 318 states have internal predecessors, (352), 16 states have call successors, (16), 5 states have call predecessors, (16), 25 states have return successors, (27), 14 states have call predecessors, (27), 14 states have call successors, (27) [2022-04-27 22:26:28,294 INFO L87 Difference]: Start difference. First operand 386 states. Second operand has 338 states, 296 states have (on average 1.1891891891891893) internal successors, (352), 318 states have internal predecessors, (352), 16 states have call successors, (16), 5 states have call predecessors, (16), 25 states have return successors, (27), 14 states have call predecessors, (27), 14 states have call successors, (27) [2022-04-27 22:26:28,302 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:28,303 INFO L93 Difference]: Finished difference Result 386 states and 451 transitions. [2022-04-27 22:26:28,303 INFO L276 IsEmpty]: Start isEmpty. Operand 386 states and 451 transitions. [2022-04-27 22:26:28,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:28,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:28,304 INFO L74 IsIncluded]: Start isIncluded. First operand has 338 states, 296 states have (on average 1.1891891891891893) internal successors, (352), 318 states have internal predecessors, (352), 16 states have call successors, (16), 5 states have call predecessors, (16), 25 states have return successors, (27), 14 states have call predecessors, (27), 14 states have call successors, (27) Second operand 386 states. [2022-04-27 22:26:28,304 INFO L87 Difference]: Start difference. First operand has 338 states, 296 states have (on average 1.1891891891891893) internal successors, (352), 318 states have internal predecessors, (352), 16 states have call successors, (16), 5 states have call predecessors, (16), 25 states have return successors, (27), 14 states have call predecessors, (27), 14 states have call successors, (27) Second operand 386 states. [2022-04-27 22:26:28,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:28,312 INFO L93 Difference]: Finished difference Result 386 states and 451 transitions. [2022-04-27 22:26:28,312 INFO L276 IsEmpty]: Start isEmpty. Operand 386 states and 451 transitions. [2022-04-27 22:26:28,313 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:28,313 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:28,313 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:28,313 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:28,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 338 states, 296 states have (on average 1.1891891891891893) internal successors, (352), 318 states have internal predecessors, (352), 16 states have call successors, (16), 5 states have call predecessors, (16), 25 states have return successors, (27), 14 states have call predecessors, (27), 14 states have call successors, (27) [2022-04-27 22:26:28,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 338 states to 338 states and 395 transitions. [2022-04-27 22:26:28,321 INFO L78 Accepts]: Start accepts. Automaton has 338 states and 395 transitions. Word has length 47 [2022-04-27 22:26:28,321 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:28,321 INFO L495 AbstractCegarLoop]: Abstraction has 338 states and 395 transitions. [2022-04-27 22:26:28,321 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:28,321 INFO L276 IsEmpty]: Start isEmpty. Operand 338 states and 395 transitions. [2022-04-27 22:26:28,322 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-27 22:26:28,322 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:28,322 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:26:28,339 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:28,539 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable43,35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:28,539 INFO L420 AbstractCegarLoop]: === Iteration 45 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:28,539 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:28,539 INFO L85 PathProgramCache]: Analyzing trace with hash -821910985, now seen corresponding path program 35 times [2022-04-27 22:26:28,539 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:28,539 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [994003642] [2022-04-27 22:26:28,539 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:28,539 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:28,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:28,616 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:28,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:28,619 INFO L290 TraceCheckUtils]: 0: Hoare triple {43938#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {43895#true} is VALID [2022-04-27 22:26:28,619 INFO L290 TraceCheckUtils]: 1: Hoare triple {43895#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:28,619 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43895#true} {43895#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:28,619 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:28,624 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:28,760 INFO L290 TraceCheckUtils]: 0: Hoare triple {43895#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,761 INFO L290 TraceCheckUtils]: 1: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,762 INFO L290 TraceCheckUtils]: 3: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,762 INFO L290 TraceCheckUtils]: 4: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:28,763 INFO L290 TraceCheckUtils]: 5: Hoare triple {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:28,763 INFO L290 TraceCheckUtils]: 6: Hoare triple {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:28,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:28,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:28,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43944#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} is VALID [2022-04-27 22:26:28,765 INFO L290 TraceCheckUtils]: 10: Hoare triple {43944#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43945#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:26:28,765 INFO L290 TraceCheckUtils]: 11: Hoare triple {43945#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:28,766 INFO L290 TraceCheckUtils]: 12: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:28,766 INFO L290 TraceCheckUtils]: 13: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:28,766 INFO L290 TraceCheckUtils]: 14: Hoare triple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:28,767 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {43895#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {43916#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:26:28,767 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-04-27 22:26:28,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:28,941 INFO L290 TraceCheckUtils]: 0: Hoare triple {43895#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,941 INFO L290 TraceCheckUtils]: 2: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,942 INFO L290 TraceCheckUtils]: 3: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,942 INFO L290 TraceCheckUtils]: 4: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:28,942 INFO L290 TraceCheckUtils]: 5: Hoare triple {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:28,943 INFO L290 TraceCheckUtils]: 6: Hoare triple {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:28,943 INFO L290 TraceCheckUtils]: 7: Hoare triple {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:28,943 INFO L290 TraceCheckUtils]: 8: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:28,944 INFO L290 TraceCheckUtils]: 9: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43953#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} is VALID [2022-04-27 22:26:28,944 INFO L290 TraceCheckUtils]: 10: Hoare triple {43953#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43954#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:26:28,944 INFO L290 TraceCheckUtils]: 11: Hoare triple {43954#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:28,945 INFO L290 TraceCheckUtils]: 12: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:28,945 INFO L290 TraceCheckUtils]: 13: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:28,945 INFO L290 TraceCheckUtils]: 14: Hoare triple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:28,946 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {43934#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:28,946 INFO L272 TraceCheckUtils]: 0: Hoare triple {43895#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43938#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:28,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {43938#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {43895#true} is VALID [2022-04-27 22:26:28,946 INFO L290 TraceCheckUtils]: 2: Hoare triple {43895#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:28,946 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43895#true} {43895#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:28,946 INFO L272 TraceCheckUtils]: 4: Hoare triple {43895#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:28,946 INFO L290 TraceCheckUtils]: 5: Hoare triple {43895#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:28,946 INFO L290 TraceCheckUtils]: 6: Hoare triple {43895#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:28,946 INFO L272 TraceCheckUtils]: 7: Hoare triple {43895#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:28,947 INFO L290 TraceCheckUtils]: 8: Hoare triple {43895#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,947 INFO L290 TraceCheckUtils]: 9: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,947 INFO L290 TraceCheckUtils]: 10: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,948 INFO L290 TraceCheckUtils]: 11: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:28,948 INFO L290 TraceCheckUtils]: 12: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:28,948 INFO L290 TraceCheckUtils]: 13: Hoare triple {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:28,949 INFO L290 TraceCheckUtils]: 14: Hoare triple {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:28,949 INFO L290 TraceCheckUtils]: 15: Hoare triple {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:28,949 INFO L290 TraceCheckUtils]: 16: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:28,950 INFO L290 TraceCheckUtils]: 17: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43944#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} is VALID [2022-04-27 22:26:28,950 INFO L290 TraceCheckUtils]: 18: Hoare triple {43944#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43945#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:26:28,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {43945#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:28,951 INFO L290 TraceCheckUtils]: 20: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:28,951 INFO L290 TraceCheckUtils]: 21: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:28,951 INFO L290 TraceCheckUtils]: 22: Hoare triple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:28,952 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {43895#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {43916#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:26:28,952 INFO L290 TraceCheckUtils]: 24: Hoare triple {43916#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:26:28,952 INFO L272 TraceCheckUtils]: 25: Hoare triple {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:28,952 INFO L290 TraceCheckUtils]: 26: Hoare triple {43895#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,952 INFO L290 TraceCheckUtils]: 27: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,953 INFO L290 TraceCheckUtils]: 28: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,953 INFO L290 TraceCheckUtils]: 29: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:28,953 INFO L290 TraceCheckUtils]: 30: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:28,954 INFO L290 TraceCheckUtils]: 31: Hoare triple {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:28,954 INFO L290 TraceCheckUtils]: 32: Hoare triple {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:28,954 INFO L290 TraceCheckUtils]: 33: Hoare triple {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:28,955 INFO L290 TraceCheckUtils]: 34: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:28,955 INFO L290 TraceCheckUtils]: 35: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43953#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} is VALID [2022-04-27 22:26:28,955 INFO L290 TraceCheckUtils]: 36: Hoare triple {43953#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43954#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:26:28,956 INFO L290 TraceCheckUtils]: 37: Hoare triple {43954#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:28,956 INFO L290 TraceCheckUtils]: 38: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:28,956 INFO L290 TraceCheckUtils]: 39: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:28,956 INFO L290 TraceCheckUtils]: 40: Hoare triple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:28,957 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {43934#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:28,957 INFO L290 TraceCheckUtils]: 42: Hoare triple {43934#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {43935#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:26:28,958 INFO L272 TraceCheckUtils]: 43: Hoare triple {43935#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {43936#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:26:28,958 INFO L290 TraceCheckUtils]: 44: Hoare triple {43936#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {43937#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:26:28,958 INFO L290 TraceCheckUtils]: 45: Hoare triple {43937#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {43896#false} is VALID [2022-04-27 22:26:28,958 INFO L290 TraceCheckUtils]: 46: Hoare triple {43896#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43896#false} is VALID [2022-04-27 22:26:28,958 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:26:28,958 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:28,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [994003642] [2022-04-27 22:26:28,958 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [994003642] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:28,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [678928407] [2022-04-27 22:26:28,959 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:26:28,959 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:28,959 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:28,960 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:28,961 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-27 22:26:29,020 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2022-04-27 22:26:29,021 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:26:29,022 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 47 conjunts are in the unsatisfiable core [2022-04-27 22:26:29,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:29,035 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:29,441 INFO L272 TraceCheckUtils]: 0: Hoare triple {43895#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,441 INFO L290 TraceCheckUtils]: 1: Hoare triple {43895#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {43895#true} is VALID [2022-04-27 22:26:29,441 INFO L290 TraceCheckUtils]: 2: Hoare triple {43895#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,441 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43895#true} {43895#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,441 INFO L272 TraceCheckUtils]: 4: Hoare triple {43895#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {43895#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:29,442 INFO L290 TraceCheckUtils]: 6: Hoare triple {43895#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,442 INFO L272 TraceCheckUtils]: 7: Hoare triple {43895#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:29,442 INFO L290 TraceCheckUtils]: 8: Hoare triple {43895#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,442 INFO L290 TraceCheckUtils]: 9: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,442 INFO L290 TraceCheckUtils]: 10: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,443 INFO L290 TraceCheckUtils]: 11: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,443 INFO L290 TraceCheckUtils]: 12: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:29,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:29,444 INFO L290 TraceCheckUtils]: 14: Hoare triple {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:29,444 INFO L290 TraceCheckUtils]: 15: Hoare triple {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:29,444 INFO L290 TraceCheckUtils]: 16: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:29,445 INFO L290 TraceCheckUtils]: 17: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {44011#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:29,445 INFO L290 TraceCheckUtils]: 18: Hoare triple {44011#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {44015#(and (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:29,445 INFO L290 TraceCheckUtils]: 19: Hoare triple {44015#(and (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:29,446 INFO L290 TraceCheckUtils]: 20: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:29,446 INFO L290 TraceCheckUtils]: 21: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:29,446 INFO L290 TraceCheckUtils]: 22: Hoare triple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:29,447 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {43895#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {43916#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:26:29,447 INFO L290 TraceCheckUtils]: 24: Hoare triple {43916#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:26:29,447 INFO L272 TraceCheckUtils]: 25: Hoare triple {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:29,447 INFO L290 TraceCheckUtils]: 26: Hoare triple {43895#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,448 INFO L290 TraceCheckUtils]: 27: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,448 INFO L290 TraceCheckUtils]: 28: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,448 INFO L290 TraceCheckUtils]: 29: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,448 INFO L290 TraceCheckUtils]: 30: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:29,449 INFO L290 TraceCheckUtils]: 31: Hoare triple {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:29,449 INFO L290 TraceCheckUtils]: 32: Hoare triple {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:29,450 INFO L290 TraceCheckUtils]: 33: Hoare triple {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:29,450 INFO L290 TraceCheckUtils]: 34: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:29,450 INFO L290 TraceCheckUtils]: 35: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {44067#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:29,450 INFO L290 TraceCheckUtils]: 36: Hoare triple {44067#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {44071#(and (= student_version_~j~1 student_version_~y~1) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:29,451 INFO L290 TraceCheckUtils]: 37: Hoare triple {44071#(and (= student_version_~j~1 student_version_~y~1) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:29,451 INFO L290 TraceCheckUtils]: 38: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:29,451 INFO L290 TraceCheckUtils]: 39: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:29,451 INFO L290 TraceCheckUtils]: 40: Hoare triple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:29,452 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {44087#(and (<= |main_#t~ret9| 8) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8) (<= 8 |main_#t~ret9|))} is VALID [2022-04-27 22:26:29,452 INFO L290 TraceCheckUtils]: 42: Hoare triple {44087#(and (<= |main_#t~ret9| 8) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8) (<= 8 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {44091#(and (<= main_~n_stones2~0 8) (<= 8 main_~n_stones2~0) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:26:29,453 INFO L272 TraceCheckUtils]: 43: Hoare triple {44091#(and (<= main_~n_stones2~0 8) (<= 8 main_~n_stones2~0) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {44095#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:26:29,453 INFO L290 TraceCheckUtils]: 44: Hoare triple {44095#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {44099#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:26:29,453 INFO L290 TraceCheckUtils]: 45: Hoare triple {44099#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {43896#false} is VALID [2022-04-27 22:26:29,453 INFO L290 TraceCheckUtils]: 46: Hoare triple {43896#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43896#false} is VALID [2022-04-27 22:26:29,453 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:26:29,454 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:29,756 INFO L290 TraceCheckUtils]: 46: Hoare triple {43896#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43896#false} is VALID [2022-04-27 22:26:29,757 INFO L290 TraceCheckUtils]: 45: Hoare triple {44099#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {43896#false} is VALID [2022-04-27 22:26:29,757 INFO L290 TraceCheckUtils]: 44: Hoare triple {44095#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {44099#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:26:29,757 INFO L272 TraceCheckUtils]: 43: Hoare triple {43935#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {44095#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:26:29,758 INFO L290 TraceCheckUtils]: 42: Hoare triple {43934#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {43935#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:26:29,758 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {43934#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:29,759 INFO L290 TraceCheckUtils]: 40: Hoare triple {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:29,759 INFO L290 TraceCheckUtils]: 39: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {43956#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:26:29,759 INFO L290 TraceCheckUtils]: 38: Hoare triple {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:29,760 INFO L290 TraceCheckUtils]: 37: Hoare triple {43954#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43955#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:26:29,760 INFO L290 TraceCheckUtils]: 36: Hoare triple {43953#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43954#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:26:29,760 INFO L290 TraceCheckUtils]: 35: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {43953#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} is VALID [2022-04-27 22:26:29,761 INFO L290 TraceCheckUtils]: 34: Hoare triple {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:29,761 INFO L290 TraceCheckUtils]: 33: Hoare triple {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43952#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:26:29,761 INFO L290 TraceCheckUtils]: 32: Hoare triple {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43951#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:26:29,762 INFO L290 TraceCheckUtils]: 31: Hoare triple {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43950#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:29,762 INFO L290 TraceCheckUtils]: 30: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {43949#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:29,762 INFO L290 TraceCheckUtils]: 29: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,763 INFO L290 TraceCheckUtils]: 28: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,763 INFO L290 TraceCheckUtils]: 27: Hoare triple {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,763 INFO L290 TraceCheckUtils]: 26: Hoare triple {43895#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {43948#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:29,763 INFO L272 TraceCheckUtils]: 25: Hoare triple {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:29,764 INFO L290 TraceCheckUtils]: 24: Hoare triple {43916#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {43917#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:26:29,764 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {43895#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {43916#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:26:29,764 INFO L290 TraceCheckUtils]: 22: Hoare triple {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:29,765 INFO L290 TraceCheckUtils]: 21: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {43947#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:26:29,765 INFO L290 TraceCheckUtils]: 20: Hoare triple {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:29,765 INFO L290 TraceCheckUtils]: 19: Hoare triple {43945#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43946#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:26:29,766 INFO L290 TraceCheckUtils]: 18: Hoare triple {43944#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43945#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:26:29,766 INFO L290 TraceCheckUtils]: 17: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {43944#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} is VALID [2022-04-27 22:26:29,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:29,767 INFO L290 TraceCheckUtils]: 15: Hoare triple {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43943#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:26:29,767 INFO L290 TraceCheckUtils]: 14: Hoare triple {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43942#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:26:29,767 INFO L290 TraceCheckUtils]: 13: Hoare triple {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43941#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:29,768 INFO L290 TraceCheckUtils]: 12: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {43940#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:29,768 INFO L290 TraceCheckUtils]: 11: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,768 INFO L290 TraceCheckUtils]: 10: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,769 INFO L290 TraceCheckUtils]: 9: Hoare triple {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,769 INFO L290 TraceCheckUtils]: 8: Hoare triple {43895#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {43939#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:29,769 INFO L272 TraceCheckUtils]: 7: Hoare triple {43895#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:29,769 INFO L290 TraceCheckUtils]: 6: Hoare triple {43895#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,769 INFO L290 TraceCheckUtils]: 5: Hoare triple {43895#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {43895#true} is VALID [2022-04-27 22:26:29,769 INFO L272 TraceCheckUtils]: 4: Hoare triple {43895#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,769 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43895#true} {43895#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,769 INFO L290 TraceCheckUtils]: 2: Hoare triple {43895#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,769 INFO L290 TraceCheckUtils]: 1: Hoare triple {43895#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {43895#true} is VALID [2022-04-27 22:26:29,769 INFO L272 TraceCheckUtils]: 0: Hoare triple {43895#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43895#true} is VALID [2022-04-27 22:26:29,770 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:26:29,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [678928407] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:29,770 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:29,770 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 26, 26] total 35 [2022-04-27 22:26:29,770 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1833577916] [2022-04-27 22:26:29,770 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:29,771 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 47 [2022-04-27 22:26:29,771 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:29,771 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:29,812 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:29,812 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 35 states [2022-04-27 22:26:29,812 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:29,812 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2022-04-27 22:26:29,812 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=1109, Unknown=0, NotChecked=0, Total=1190 [2022-04-27 22:26:29,812 INFO L87 Difference]: Start difference. First operand 338 states and 395 transitions. Second operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:33,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:33,668 INFO L93 Difference]: Finished difference Result 344 states and 400 transitions. [2022-04-27 22:26:33,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-27 22:26:33,668 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 47 [2022-04-27 22:26:33,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:33,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:33,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 124 transitions. [2022-04-27 22:26:33,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:33,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 124 transitions. [2022-04-27 22:26:33,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 124 transitions. [2022-04-27 22:26:33,762 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:33,767 INFO L225 Difference]: With dead ends: 344 [2022-04-27 22:26:33,767 INFO L226 Difference]: Without dead ends: 322 [2022-04-27 22:26:33,769 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 82 SyntacticMatches, 9 SemanticMatches, 58 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 539 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=219, Invalid=3321, Unknown=0, NotChecked=0, Total=3540 [2022-04-27 22:26:33,769 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 114 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 2570 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 115 SdHoareTripleChecker+Valid, 205 SdHoareTripleChecker+Invalid, 2602 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 2570 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:33,769 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [115 Valid, 205 Invalid, 2602 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 2570 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-27 22:26:33,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 322 states. [2022-04-27 22:26:34,911 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 322 to 322. [2022-04-27 22:26:34,911 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:34,912 INFO L82 GeneralOperation]: Start isEquivalent. First operand 322 states. Second operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:26:34,912 INFO L74 IsIncluded]: Start isIncluded. First operand 322 states. Second operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:26:34,912 INFO L87 Difference]: Start difference. First operand 322 states. Second operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:26:34,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:34,917 INFO L93 Difference]: Finished difference Result 322 states and 377 transitions. [2022-04-27 22:26:34,917 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 377 transitions. [2022-04-27 22:26:34,917 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:34,917 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:34,918 INFO L74 IsIncluded]: Start isIncluded. First operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) Second operand 322 states. [2022-04-27 22:26:34,918 INFO L87 Difference]: Start difference. First operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) Second operand 322 states. [2022-04-27 22:26:34,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:34,922 INFO L93 Difference]: Finished difference Result 322 states and 377 transitions. [2022-04-27 22:26:34,922 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 377 transitions. [2022-04-27 22:26:34,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:34,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:34,923 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:34,923 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:34,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 322 states, 283 states have (on average 1.1908127208480566) internal successors, (337), 303 states have internal predecessors, (337), 15 states have call successors, (15), 5 states have call predecessors, (15), 23 states have return successors, (25), 13 states have call predecessors, (25), 13 states have call successors, (25) [2022-04-27 22:26:34,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 322 states to 322 states and 377 transitions. [2022-04-27 22:26:34,929 INFO L78 Accepts]: Start accepts. Automaton has 322 states and 377 transitions. Word has length 47 [2022-04-27 22:26:34,929 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:34,929 INFO L495 AbstractCegarLoop]: Abstraction has 322 states and 377 transitions. [2022-04-27 22:26:34,929 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:34,929 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 377 transitions. [2022-04-27 22:26:34,930 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-27 22:26:34,930 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:34,930 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:26:34,956 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:35,144 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable44 [2022-04-27 22:26:35,144 INFO L420 AbstractCegarLoop]: === Iteration 46 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:35,145 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:35,145 INFO L85 PathProgramCache]: Analyzing trace with hash 870449050, now seen corresponding path program 36 times [2022-04-27 22:26:35,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:35,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1550095116] [2022-04-27 22:26:35,145 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:35,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:35,162 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:35,176 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:35,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:35,179 INFO L290 TraceCheckUtils]: 0: Hoare triple {45950#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {45912#true} is VALID [2022-04-27 22:26:35,179 INFO L290 TraceCheckUtils]: 1: Hoare triple {45912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:35,179 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {45912#true} {45912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:35,179 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:35,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:35,270 INFO L290 TraceCheckUtils]: 0: Hoare triple {45912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {45951#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:35,270 INFO L290 TraceCheckUtils]: 1: Hoare triple {45951#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45952#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:35,271 INFO L290 TraceCheckUtils]: 2: Hoare triple {45952#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45953#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:26:35,271 INFO L290 TraceCheckUtils]: 3: Hoare triple {45953#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45954#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:26:35,272 INFO L290 TraceCheckUtils]: 4: Hoare triple {45954#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {45955#(and (<= |correct_version_#in~n| (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:35,272 INFO L290 TraceCheckUtils]: 5: Hoare triple {45955#(and (<= |correct_version_#in~n| (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,273 INFO L290 TraceCheckUtils]: 6: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,273 INFO L290 TraceCheckUtils]: 7: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,273 INFO L290 TraceCheckUtils]: 8: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,274 INFO L290 TraceCheckUtils]: 9: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,274 INFO L290 TraceCheckUtils]: 10: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,274 INFO L290 TraceCheckUtils]: 11: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,275 INFO L290 TraceCheckUtils]: 12: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,275 INFO L290 TraceCheckUtils]: 13: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,276 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} {45912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {45932#(<= main_~n~0 (* main_~a~0 3))} is VALID [2022-04-27 22:26:35,276 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 24 [2022-04-27 22:26:35,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:35,405 INFO L290 TraceCheckUtils]: 0: Hoare triple {45912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {45957#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {45957#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45958#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,406 INFO L290 TraceCheckUtils]: 2: Hoare triple {45958#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45959#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,406 INFO L290 TraceCheckUtils]: 3: Hoare triple {45959#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45960#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,407 INFO L290 TraceCheckUtils]: 4: Hoare triple {45960#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45961#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,407 INFO L290 TraceCheckUtils]: 5: Hoare triple {45961#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {45962#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:26:35,408 INFO L290 TraceCheckUtils]: 6: Hoare triple {45962#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,408 INFO L290 TraceCheckUtils]: 7: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,408 INFO L290 TraceCheckUtils]: 8: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,409 INFO L290 TraceCheckUtils]: 9: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,409 INFO L290 TraceCheckUtils]: 10: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,409 INFO L290 TraceCheckUtils]: 11: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,410 INFO L290 TraceCheckUtils]: 12: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,410 INFO L290 TraceCheckUtils]: 14: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,410 INFO L290 TraceCheckUtils]: 15: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,411 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} {45932#(<= main_~n~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {45913#false} is VALID [2022-04-27 22:26:35,412 INFO L272 TraceCheckUtils]: 0: Hoare triple {45912#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45950#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:35,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {45950#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {45912#true} is VALID [2022-04-27 22:26:35,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {45912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:35,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45912#true} {45912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:35,412 INFO L272 TraceCheckUtils]: 4: Hoare triple {45912#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:35,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {45912#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:35,412 INFO L290 TraceCheckUtils]: 6: Hoare triple {45912#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:35,412 INFO L272 TraceCheckUtils]: 7: Hoare triple {45912#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:35,413 INFO L290 TraceCheckUtils]: 8: Hoare triple {45912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {45951#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:35,413 INFO L290 TraceCheckUtils]: 9: Hoare triple {45951#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45952#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:35,414 INFO L290 TraceCheckUtils]: 10: Hoare triple {45952#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45953#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:26:35,414 INFO L290 TraceCheckUtils]: 11: Hoare triple {45953#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45954#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:26:35,415 INFO L290 TraceCheckUtils]: 12: Hoare triple {45954#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {45955#(and (<= |correct_version_#in~n| (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:35,415 INFO L290 TraceCheckUtils]: 13: Hoare triple {45955#(and (<= |correct_version_#in~n| (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,416 INFO L290 TraceCheckUtils]: 14: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,416 INFO L290 TraceCheckUtils]: 15: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,416 INFO L290 TraceCheckUtils]: 16: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,417 INFO L290 TraceCheckUtils]: 17: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,417 INFO L290 TraceCheckUtils]: 18: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,417 INFO L290 TraceCheckUtils]: 19: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,418 INFO L290 TraceCheckUtils]: 20: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,418 INFO L290 TraceCheckUtils]: 21: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:35,419 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} {45912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {45932#(<= main_~n~0 (* main_~a~0 3))} is VALID [2022-04-27 22:26:35,419 INFO L290 TraceCheckUtils]: 23: Hoare triple {45932#(<= main_~n~0 (* main_~a~0 3))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {45932#(<= main_~n~0 (* main_~a~0 3))} is VALID [2022-04-27 22:26:35,419 INFO L272 TraceCheckUtils]: 24: Hoare triple {45932#(<= main_~n~0 (* main_~a~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:35,420 INFO L290 TraceCheckUtils]: 25: Hoare triple {45912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {45957#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,420 INFO L290 TraceCheckUtils]: 26: Hoare triple {45957#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45958#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,421 INFO L290 TraceCheckUtils]: 27: Hoare triple {45958#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45959#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,421 INFO L290 TraceCheckUtils]: 28: Hoare triple {45959#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45960#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,422 INFO L290 TraceCheckUtils]: 29: Hoare triple {45960#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45961#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:35,422 INFO L290 TraceCheckUtils]: 30: Hoare triple {45961#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {45962#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:26:35,423 INFO L290 TraceCheckUtils]: 31: Hoare triple {45962#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 3 student_version_~a) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,423 INFO L290 TraceCheckUtils]: 32: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,423 INFO L290 TraceCheckUtils]: 33: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,424 INFO L290 TraceCheckUtils]: 34: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,424 INFO L290 TraceCheckUtils]: 35: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,424 INFO L290 TraceCheckUtils]: 36: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,424 INFO L290 TraceCheckUtils]: 37: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,425 INFO L290 TraceCheckUtils]: 38: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,425 INFO L290 TraceCheckUtils]: 39: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,425 INFO L290 TraceCheckUtils]: 40: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:35,426 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} {45932#(<= main_~n~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {45913#false} is VALID [2022-04-27 22:26:35,426 INFO L290 TraceCheckUtils]: 42: Hoare triple {45913#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {45913#false} is VALID [2022-04-27 22:26:35,426 INFO L272 TraceCheckUtils]: 43: Hoare triple {45913#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {45913#false} is VALID [2022-04-27 22:26:35,426 INFO L290 TraceCheckUtils]: 44: Hoare triple {45913#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {45913#false} is VALID [2022-04-27 22:26:35,426 INFO L290 TraceCheckUtils]: 45: Hoare triple {45913#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {45913#false} is VALID [2022-04-27 22:26:35,427 INFO L290 TraceCheckUtils]: 46: Hoare triple {45913#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45913#false} is VALID [2022-04-27 22:26:35,427 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 22:26:35,427 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:35,427 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1550095116] [2022-04-27 22:26:35,427 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1550095116] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:35,427 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1827323020] [2022-04-27 22:26:35,427 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:26:35,427 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:35,427 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:35,428 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:35,429 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-27 22:26:35,495 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 3 check-sat command(s) [2022-04-27 22:26:35,495 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:26:35,496 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 22:26:35,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:35,527 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:36,307 INFO L272 TraceCheckUtils]: 0: Hoare triple {45912#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:36,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {45912#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {45912#true} is VALID [2022-04-27 22:26:36,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {45912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:36,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45912#true} {45912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:36,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {45912#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:36,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {45912#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:36,308 INFO L290 TraceCheckUtils]: 6: Hoare triple {45912#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:36,308 INFO L272 TraceCheckUtils]: 7: Hoare triple {45912#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:36,308 INFO L290 TraceCheckUtils]: 8: Hoare triple {45912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {45991#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,309 INFO L290 TraceCheckUtils]: 9: Hoare triple {45991#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45995#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,309 INFO L290 TraceCheckUtils]: 10: Hoare triple {45995#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {45999#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:26:36,310 INFO L290 TraceCheckUtils]: 11: Hoare triple {45999#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {46003#(and (<= |correct_version_#in~n| correct_version_~n) (<= (div (- correct_version_~b~0) (- 3)) |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,311 INFO L290 TraceCheckUtils]: 12: Hoare triple {46003#(and (<= |correct_version_#in~n| correct_version_~n) (<= (div (- correct_version_~b~0) (- 3)) |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,311 INFO L290 TraceCheckUtils]: 13: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,311 INFO L290 TraceCheckUtils]: 14: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,312 INFO L290 TraceCheckUtils]: 15: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,312 INFO L290 TraceCheckUtils]: 16: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,312 INFO L290 TraceCheckUtils]: 17: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,313 INFO L290 TraceCheckUtils]: 18: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,313 INFO L290 TraceCheckUtils]: 19: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,313 INFO L290 TraceCheckUtils]: 20: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,314 INFO L290 TraceCheckUtils]: 21: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:36,314 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} {45912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {45932#(<= main_~n~0 (* main_~a~0 3))} is VALID [2022-04-27 22:26:36,315 INFO L290 TraceCheckUtils]: 23: Hoare triple {45932#(<= main_~n~0 (* main_~a~0 3))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {45932#(<= main_~n~0 (* main_~a~0 3))} is VALID [2022-04-27 22:26:36,315 INFO L272 TraceCheckUtils]: 24: Hoare triple {45932#(<= main_~n~0 (* main_~a~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:36,315 INFO L290 TraceCheckUtils]: 25: Hoare triple {45912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {46046#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:26:36,316 INFO L290 TraceCheckUtils]: 26: Hoare triple {46046#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {46050#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:26:36,316 INFO L290 TraceCheckUtils]: 27: Hoare triple {46050#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {46054#(and (<= (* 2 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:26:36,317 INFO L290 TraceCheckUtils]: 28: Hoare triple {46054#(and (<= (* 2 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {46058#(and (<= |student_version_#in~a| (div student_version_~b~1 3)) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:26:36,317 INFO L290 TraceCheckUtils]: 29: Hoare triple {46058#(and (<= |student_version_#in~a| (div student_version_~b~1 3)) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,318 INFO L290 TraceCheckUtils]: 30: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,318 INFO L290 TraceCheckUtils]: 31: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,318 INFO L290 TraceCheckUtils]: 32: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,318 INFO L290 TraceCheckUtils]: 33: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,319 INFO L290 TraceCheckUtils]: 34: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,319 INFO L290 TraceCheckUtils]: 35: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,319 INFO L290 TraceCheckUtils]: 36: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,320 INFO L290 TraceCheckUtils]: 37: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,320 INFO L290 TraceCheckUtils]: 38: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,320 INFO L290 TraceCheckUtils]: 39: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,320 INFO L290 TraceCheckUtils]: 40: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:36,321 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} {45932#(<= main_~n~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {45913#false} is VALID [2022-04-27 22:26:36,321 INFO L290 TraceCheckUtils]: 42: Hoare triple {45913#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {45913#false} is VALID [2022-04-27 22:26:36,321 INFO L272 TraceCheckUtils]: 43: Hoare triple {45913#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {45913#false} is VALID [2022-04-27 22:26:36,321 INFO L290 TraceCheckUtils]: 44: Hoare triple {45913#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {45913#false} is VALID [2022-04-27 22:26:36,321 INFO L290 TraceCheckUtils]: 45: Hoare triple {45913#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {45913#false} is VALID [2022-04-27 22:26:36,322 INFO L290 TraceCheckUtils]: 46: Hoare triple {45913#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45913#false} is VALID [2022-04-27 22:26:36,322 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-27 22:26:36,322 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:37,452 INFO L290 TraceCheckUtils]: 46: Hoare triple {45913#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45913#false} is VALID [2022-04-27 22:26:37,453 INFO L290 TraceCheckUtils]: 45: Hoare triple {45913#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {45913#false} is VALID [2022-04-27 22:26:37,453 INFO L290 TraceCheckUtils]: 44: Hoare triple {45913#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {45913#false} is VALID [2022-04-27 22:26:37,453 INFO L272 TraceCheckUtils]: 43: Hoare triple {45913#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {45913#false} is VALID [2022-04-27 22:26:37,453 INFO L290 TraceCheckUtils]: 42: Hoare triple {45913#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {45913#false} is VALID [2022-04-27 22:26:37,454 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} {45932#(<= main_~n~0 (* main_~a~0 3))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {45913#false} is VALID [2022-04-27 22:26:37,454 INFO L290 TraceCheckUtils]: 40: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,454 INFO L290 TraceCheckUtils]: 39: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,455 INFO L290 TraceCheckUtils]: 38: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,455 INFO L290 TraceCheckUtils]: 37: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,455 INFO L290 TraceCheckUtils]: 36: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,456 INFO L290 TraceCheckUtils]: 35: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,456 INFO L290 TraceCheckUtils]: 34: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,456 INFO L290 TraceCheckUtils]: 33: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,456 INFO L290 TraceCheckUtils]: 32: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,457 INFO L290 TraceCheckUtils]: 31: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,457 INFO L290 TraceCheckUtils]: 30: Hoare triple {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,457 INFO L290 TraceCheckUtils]: 29: Hoare triple {46167#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (not (< student_version_~b~1 student_version_~n)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {45963#(<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:26:37,458 INFO L290 TraceCheckUtils]: 28: Hoare triple {46171#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 student_version_~a)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {46167#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (not (< student_version_~b~1 student_version_~n)))} is VALID [2022-04-27 22:26:37,458 INFO L290 TraceCheckUtils]: 27: Hoare triple {46175#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {46171#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 student_version_~a)))} is VALID [2022-04-27 22:26:37,459 INFO L290 TraceCheckUtils]: 26: Hoare triple {46179#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (<= student_version_~n (+ (* 3 student_version_~a) student_version_~b~1)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {46175#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:26:37,460 INFO L290 TraceCheckUtils]: 25: Hoare triple {45912#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {46179#(or (<= (+ (* |student_version_#in~a| 3) 1) |student_version_#in~n|) (<= student_version_~n (+ (* 3 student_version_~a) student_version_~b~1)))} is VALID [2022-04-27 22:26:37,460 INFO L272 TraceCheckUtils]: 24: Hoare triple {45932#(<= main_~n~0 (* main_~a~0 3))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:37,460 INFO L290 TraceCheckUtils]: 23: Hoare triple {45932#(<= main_~n~0 (* main_~a~0 3))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {45932#(<= main_~n~0 (* main_~a~0 3))} is VALID [2022-04-27 22:26:37,461 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} {45912#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {45932#(<= main_~n~0 (* main_~a~0 3))} is VALID [2022-04-27 22:26:37,461 INFO L290 TraceCheckUtils]: 21: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,461 INFO L290 TraceCheckUtils]: 20: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,462 INFO L290 TraceCheckUtils]: 19: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,462 INFO L290 TraceCheckUtils]: 18: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,462 INFO L290 TraceCheckUtils]: 17: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,463 INFO L290 TraceCheckUtils]: 16: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,463 INFO L290 TraceCheckUtils]: 15: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,463 INFO L290 TraceCheckUtils]: 14: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,464 INFO L290 TraceCheckUtils]: 13: Hoare triple {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,464 INFO L290 TraceCheckUtils]: 12: Hoare triple {46222#(or (< correct_version_~b~0 correct_version_~n) (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {45956#(<= |correct_version_#in~n| (* 3 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:37,465 INFO L290 TraceCheckUtils]: 11: Hoare triple {46226#(or (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {46222#(or (< correct_version_~b~0 correct_version_~n) (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:26:37,465 INFO L290 TraceCheckUtils]: 10: Hoare triple {46230#(or (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n) (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {46226#(or (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} is VALID [2022-04-27 22:26:37,466 INFO L290 TraceCheckUtils]: 9: Hoare triple {46234#(or (< (+ correct_version_~b~0 (* 3 correct_version_~a)) correct_version_~n) (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {46230#(or (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n) (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:26:37,466 INFO L290 TraceCheckUtils]: 8: Hoare triple {45912#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {46234#(or (< (+ correct_version_~b~0 (* 3 correct_version_~a)) correct_version_~n) (<= |correct_version_#in~n| (* 3 |correct_version_#in~a|)))} is VALID [2022-04-27 22:26:37,466 INFO L272 TraceCheckUtils]: 7: Hoare triple {45912#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:37,466 INFO L290 TraceCheckUtils]: 6: Hoare triple {45912#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:37,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {45912#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {45912#true} is VALID [2022-04-27 22:26:37,467 INFO L272 TraceCheckUtils]: 4: Hoare triple {45912#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:37,467 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45912#true} {45912#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:37,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {45912#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:37,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {45912#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {45912#true} is VALID [2022-04-27 22:26:37,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {45912#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {45912#true} is VALID [2022-04-27 22:26:37,467 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-27 22:26:37,467 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1827323020] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:37,467 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:37,467 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13, 13] total 33 [2022-04-27 22:26:37,467 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1780923073] [2022-04-27 22:26:37,467 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:37,468 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 47 [2022-04-27 22:26:37,468 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:37,468 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:37,497 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:37,498 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-04-27 22:26:37,498 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:37,498 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-04-27 22:26:37,498 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=945, Unknown=0, NotChecked=0, Total=1056 [2022-04-27 22:26:37,498 INFO L87 Difference]: Start difference. First operand 322 states and 377 transitions. Second operand has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:40,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:40,479 INFO L93 Difference]: Finished difference Result 378 states and 443 transitions. [2022-04-27 22:26:40,479 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-27 22:26:40,479 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 47 [2022-04-27 22:26:40,479 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:40,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:40,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 110 transitions. [2022-04-27 22:26:40,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:40,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 110 transitions. [2022-04-27 22:26:40,481 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 110 transitions. [2022-04-27 22:26:40,546 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-27 22:26:40,554 INFO L225 Difference]: With dead ends: 378 [2022-04-27 22:26:40,554 INFO L226 Difference]: Without dead ends: 362 [2022-04-27 22:26:40,555 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 76 SyntacticMatches, 6 SemanticMatches, 47 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 294 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=252, Invalid=2100, Unknown=0, NotChecked=0, Total=2352 [2022-04-27 22:26:40,556 INFO L413 NwaCegarLoop]: 59 mSDtfsCounter, 348 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 1064 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 352 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 1103 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 1064 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:40,556 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [352 Valid, 126 Invalid, 1103 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 1064 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 22:26:40,556 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 362 states. [2022-04-27 22:26:42,770 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 362 to 357. [2022-04-27 22:26:42,770 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:42,770 INFO L82 GeneralOperation]: Start isEquivalent. First operand 362 states. Second operand has 357 states, 303 states have (on average 1.174917491749175) internal successors, (356), 333 states have internal predecessors, (356), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:42,771 INFO L74 IsIncluded]: Start isIncluded. First operand 362 states. Second operand has 357 states, 303 states have (on average 1.174917491749175) internal successors, (356), 333 states have internal predecessors, (356), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:42,771 INFO L87 Difference]: Start difference. First operand 362 states. Second operand has 357 states, 303 states have (on average 1.174917491749175) internal successors, (356), 333 states have internal predecessors, (356), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:42,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:42,776 INFO L93 Difference]: Finished difference Result 362 states and 421 transitions. [2022-04-27 22:26:42,777 INFO L276 IsEmpty]: Start isEmpty. Operand 362 states and 421 transitions. [2022-04-27 22:26:42,777 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:42,777 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:42,778 INFO L74 IsIncluded]: Start isIncluded. First operand has 357 states, 303 states have (on average 1.174917491749175) internal successors, (356), 333 states have internal predecessors, (356), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) Second operand 362 states. [2022-04-27 22:26:42,778 INFO L87 Difference]: Start difference. First operand has 357 states, 303 states have (on average 1.174917491749175) internal successors, (356), 333 states have internal predecessors, (356), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) Second operand 362 states. [2022-04-27 22:26:42,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:42,787 INFO L93 Difference]: Finished difference Result 362 states and 421 transitions. [2022-04-27 22:26:42,787 INFO L276 IsEmpty]: Start isEmpty. Operand 362 states and 421 transitions. [2022-04-27 22:26:42,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:42,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:42,788 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:42,788 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:42,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 357 states, 303 states have (on average 1.174917491749175) internal successors, (356), 333 states have internal predecessors, (356), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:42,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 357 states to 357 states and 416 transitions. [2022-04-27 22:26:42,800 INFO L78 Accepts]: Start accepts. Automaton has 357 states and 416 transitions. Word has length 47 [2022-04-27 22:26:42,807 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:42,807 INFO L495 AbstractCegarLoop]: Abstraction has 357 states and 416 transitions. [2022-04-27 22:26:42,808 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:42,808 INFO L276 IsEmpty]: Start isEmpty. Operand 357 states and 416 transitions. [2022-04-27 22:26:42,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-27 22:26:42,810 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:42,810 INFO L195 NwaCegarLoop]: trace histogram [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, 1, 1, 1, 1] [2022-04-27 22:26:42,827 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:43,026 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable45,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:43,027 INFO L420 AbstractCegarLoop]: === Iteration 47 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:43,027 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:43,027 INFO L85 PathProgramCache]: Analyzing trace with hash -545415892, now seen corresponding path program 37 times [2022-04-27 22:26:43,027 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:43,027 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [515094270] [2022-04-27 22:26:43,027 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:43,027 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:43,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:43,113 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:43,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:43,116 INFO L290 TraceCheckUtils]: 0: Hoare triple {48101#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {48058#true} is VALID [2022-04-27 22:26:43,116 INFO L290 TraceCheckUtils]: 1: Hoare triple {48058#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:43,116 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {48058#true} {48058#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:43,116 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:43,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:43,266 INFO L290 TraceCheckUtils]: 0: Hoare triple {48058#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,267 INFO L290 TraceCheckUtils]: 3: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,267 INFO L290 TraceCheckUtils]: 4: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,268 INFO L290 TraceCheckUtils]: 5: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:43,269 INFO L290 TraceCheckUtils]: 6: Hoare triple {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:43,269 INFO L290 TraceCheckUtils]: 7: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:43,270 INFO L290 TraceCheckUtils]: 8: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48105#(and (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 6))} is VALID [2022-04-27 22:26:43,270 INFO L290 TraceCheckUtils]: 9: Hoare triple {48105#(and (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48106#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:26:43,271 INFO L290 TraceCheckUtils]: 10: Hoare triple {48106#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48107#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:26:43,272 INFO L290 TraceCheckUtils]: 11: Hoare triple {48107#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:43,272 INFO L290 TraceCheckUtils]: 12: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:43,272 INFO L290 TraceCheckUtils]: 13: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:43,273 INFO L290 TraceCheckUtils]: 14: Hoare triple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:43,274 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {48058#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {48079#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:43,274 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-04-27 22:26:43,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:43,435 INFO L290 TraceCheckUtils]: 0: Hoare triple {48058#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,436 INFO L290 TraceCheckUtils]: 2: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,436 INFO L290 TraceCheckUtils]: 3: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,436 INFO L290 TraceCheckUtils]: 4: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:43,437 INFO L290 TraceCheckUtils]: 6: Hoare triple {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:43,437 INFO L290 TraceCheckUtils]: 7: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:43,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48113#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 6) (<= 6 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:26:43,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {48113#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 6) (<= 6 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48114#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:26:43,438 INFO L290 TraceCheckUtils]: 10: Hoare triple {48114#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48115#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:26:43,439 INFO L290 TraceCheckUtils]: 11: Hoare triple {48115#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:43,439 INFO L290 TraceCheckUtils]: 12: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:43,439 INFO L290 TraceCheckUtils]: 13: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:43,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:43,440 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {48097#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:43,440 INFO L272 TraceCheckUtils]: 0: Hoare triple {48058#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48101#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:43,441 INFO L290 TraceCheckUtils]: 1: Hoare triple {48101#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {48058#true} is VALID [2022-04-27 22:26:43,441 INFO L290 TraceCheckUtils]: 2: Hoare triple {48058#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:43,441 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {48058#true} {48058#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:43,441 INFO L272 TraceCheckUtils]: 4: Hoare triple {48058#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:43,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {48058#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:43,441 INFO L290 TraceCheckUtils]: 6: Hoare triple {48058#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:43,441 INFO L272 TraceCheckUtils]: 7: Hoare triple {48058#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:43,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {48058#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,442 INFO L290 TraceCheckUtils]: 9: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,442 INFO L290 TraceCheckUtils]: 10: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,442 INFO L290 TraceCheckUtils]: 11: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,442 INFO L290 TraceCheckUtils]: 12: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:43,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:43,443 INFO L290 TraceCheckUtils]: 14: Hoare triple {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:43,443 INFO L290 TraceCheckUtils]: 15: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:43,444 INFO L290 TraceCheckUtils]: 16: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48105#(and (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 6))} is VALID [2022-04-27 22:26:43,444 INFO L290 TraceCheckUtils]: 17: Hoare triple {48105#(and (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48106#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:26:43,444 INFO L290 TraceCheckUtils]: 18: Hoare triple {48106#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48107#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:26:43,445 INFO L290 TraceCheckUtils]: 19: Hoare triple {48107#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:43,445 INFO L290 TraceCheckUtils]: 20: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:43,445 INFO L290 TraceCheckUtils]: 21: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:43,445 INFO L290 TraceCheckUtils]: 22: Hoare triple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:43,446 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {48058#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {48079#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:43,446 INFO L290 TraceCheckUtils]: 24: Hoare triple {48079#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:43,446 INFO L272 TraceCheckUtils]: 25: Hoare triple {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:43,447 INFO L290 TraceCheckUtils]: 26: Hoare triple {48058#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,447 INFO L290 TraceCheckUtils]: 27: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,447 INFO L290 TraceCheckUtils]: 28: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,447 INFO L290 TraceCheckUtils]: 29: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,448 INFO L290 TraceCheckUtils]: 30: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:43,448 INFO L290 TraceCheckUtils]: 31: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:43,448 INFO L290 TraceCheckUtils]: 32: Hoare triple {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:43,449 INFO L290 TraceCheckUtils]: 33: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:43,449 INFO L290 TraceCheckUtils]: 34: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48113#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 6) (<= 6 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:26:43,449 INFO L290 TraceCheckUtils]: 35: Hoare triple {48113#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 6) (<= 6 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48114#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:26:43,450 INFO L290 TraceCheckUtils]: 36: Hoare triple {48114#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48115#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:26:43,450 INFO L290 TraceCheckUtils]: 37: Hoare triple {48115#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:43,450 INFO L290 TraceCheckUtils]: 38: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:43,450 INFO L290 TraceCheckUtils]: 39: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:43,451 INFO L290 TraceCheckUtils]: 40: Hoare triple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:43,451 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {48097#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:43,452 INFO L290 TraceCheckUtils]: 42: Hoare triple {48097#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {48098#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:26:43,452 INFO L272 TraceCheckUtils]: 43: Hoare triple {48098#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {48099#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:26:43,452 INFO L290 TraceCheckUtils]: 44: Hoare triple {48099#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {48100#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:26:43,452 INFO L290 TraceCheckUtils]: 45: Hoare triple {48100#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {48059#false} is VALID [2022-04-27 22:26:43,453 INFO L290 TraceCheckUtils]: 46: Hoare triple {48059#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48059#false} is VALID [2022-04-27 22:26:43,453 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:26:43,453 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:43,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [515094270] [2022-04-27 22:26:43,453 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [515094270] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:43,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [805615190] [2022-04-27 22:26:43,453 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:26:43,453 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:43,453 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:43,454 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:43,455 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-27 22:26:43,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:43,530 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-27 22:26:43,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:43,536 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:44,018 INFO L272 TraceCheckUtils]: 0: Hoare triple {48058#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,019 INFO L290 TraceCheckUtils]: 1: Hoare triple {48058#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {48058#true} is VALID [2022-04-27 22:26:44,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {48058#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,019 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {48058#true} {48058#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,019 INFO L272 TraceCheckUtils]: 4: Hoare triple {48058#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,019 INFO L290 TraceCheckUtils]: 5: Hoare triple {48058#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:44,019 INFO L290 TraceCheckUtils]: 6: Hoare triple {48058#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,019 INFO L272 TraceCheckUtils]: 7: Hoare triple {48058#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:44,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {48058#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,020 INFO L290 TraceCheckUtils]: 10: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,020 INFO L290 TraceCheckUtils]: 11: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,021 INFO L290 TraceCheckUtils]: 12: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,021 INFO L290 TraceCheckUtils]: 13: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:44,021 INFO L290 TraceCheckUtils]: 14: Hoare triple {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:44,022 INFO L290 TraceCheckUtils]: 15: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:44,022 INFO L290 TraceCheckUtils]: 16: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48169#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:26:44,022 INFO L290 TraceCheckUtils]: 17: Hoare triple {48169#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} is VALID [2022-04-27 22:26:44,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {48173#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48177#(and (<= 2 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 2) correct_version_~j~0)) 0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:44,029 INFO L290 TraceCheckUtils]: 19: Hoare triple {48177#(and (<= 2 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 2) correct_version_~j~0)) 0) (<= correct_version_~j~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:44,029 INFO L290 TraceCheckUtils]: 20: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:44,029 INFO L290 TraceCheckUtils]: 21: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:44,029 INFO L290 TraceCheckUtils]: 22: Hoare triple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:44,030 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {48058#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {48079#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:44,030 INFO L290 TraceCheckUtils]: 24: Hoare triple {48079#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:44,030 INFO L272 TraceCheckUtils]: 25: Hoare triple {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:44,031 INFO L290 TraceCheckUtils]: 26: Hoare triple {48058#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,031 INFO L290 TraceCheckUtils]: 27: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,031 INFO L290 TraceCheckUtils]: 28: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,031 INFO L290 TraceCheckUtils]: 29: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,032 INFO L290 TraceCheckUtils]: 30: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,032 INFO L290 TraceCheckUtils]: 31: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:44,032 INFO L290 TraceCheckUtils]: 32: Hoare triple {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:44,033 INFO L290 TraceCheckUtils]: 33: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:44,033 INFO L290 TraceCheckUtils]: 34: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48226#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:44,033 INFO L290 TraceCheckUtils]: 35: Hoare triple {48226#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48230#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:26:44,034 INFO L290 TraceCheckUtils]: 36: Hoare triple {48230#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48234#(and (<= student_version_~j~1 2) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:44,034 INFO L290 TraceCheckUtils]: 37: Hoare triple {48234#(and (<= student_version_~j~1 2) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:44,034 INFO L290 TraceCheckUtils]: 38: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:44,034 INFO L290 TraceCheckUtils]: 39: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:44,035 INFO L290 TraceCheckUtils]: 40: Hoare triple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:44,035 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {48250#(and (<= 6 |main_#t~ret9|) (<= 6 main_~n_stones1~0) (<= |main_#t~ret9| 6) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:44,036 INFO L290 TraceCheckUtils]: 42: Hoare triple {48250#(and (<= 6 |main_#t~ret9|) (<= 6 main_~n_stones1~0) (<= |main_#t~ret9| 6) (<= main_~n_stones1~0 6))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {48254#(and (<= main_~n_stones2~0 6) (<= 6 main_~n_stones2~0) (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:44,036 INFO L272 TraceCheckUtils]: 43: Hoare triple {48254#(and (<= main_~n_stones2~0 6) (<= 6 main_~n_stones2~0) (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {48258#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:26:44,036 INFO L290 TraceCheckUtils]: 44: Hoare triple {48258#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {48262#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:26:44,036 INFO L290 TraceCheckUtils]: 45: Hoare triple {48262#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {48059#false} is VALID [2022-04-27 22:26:44,037 INFO L290 TraceCheckUtils]: 46: Hoare triple {48059#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48059#false} is VALID [2022-04-27 22:26:44,037 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:26:44,037 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:44,368 INFO L290 TraceCheckUtils]: 46: Hoare triple {48059#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48059#false} is VALID [2022-04-27 22:26:44,368 INFO L290 TraceCheckUtils]: 45: Hoare triple {48262#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {48059#false} is VALID [2022-04-27 22:26:44,369 INFO L290 TraceCheckUtils]: 44: Hoare triple {48258#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {48262#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:26:44,369 INFO L272 TraceCheckUtils]: 43: Hoare triple {48098#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {48258#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:26:44,369 INFO L290 TraceCheckUtils]: 42: Hoare triple {48097#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {48098#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:26:44,370 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {48097#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:26:44,370 INFO L290 TraceCheckUtils]: 40: Hoare triple {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:44,371 INFO L290 TraceCheckUtils]: 39: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {48117#(and (<= |student_version_#res| 6) (<= 6 |student_version_#res|))} is VALID [2022-04-27 22:26:44,371 INFO L290 TraceCheckUtils]: 38: Hoare triple {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:44,371 INFO L290 TraceCheckUtils]: 37: Hoare triple {48115#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48116#(and (<= student_version_~y~1 6) (<= 6 student_version_~y~1))} is VALID [2022-04-27 22:26:44,372 INFO L290 TraceCheckUtils]: 36: Hoare triple {48114#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48115#(and (<= 6 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 6))} is VALID [2022-04-27 22:26:44,372 INFO L290 TraceCheckUtils]: 35: Hoare triple {48113#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 6) (<= 6 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48114#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 6) (<= 6 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:26:44,372 INFO L290 TraceCheckUtils]: 34: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {48113#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 6) (<= 6 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:26:44,373 INFO L290 TraceCheckUtils]: 33: Hoare triple {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:44,373 INFO L290 TraceCheckUtils]: 32: Hoare triple {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48112#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:26:44,373 INFO L290 TraceCheckUtils]: 31: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {48111#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:26:44,374 INFO L290 TraceCheckUtils]: 30: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,374 INFO L290 TraceCheckUtils]: 29: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,374 INFO L290 TraceCheckUtils]: 28: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,374 INFO L290 TraceCheckUtils]: 27: Hoare triple {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,375 INFO L290 TraceCheckUtils]: 26: Hoare triple {48058#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {48110#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:26:44,375 INFO L272 TraceCheckUtils]: 25: Hoare triple {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:44,375 INFO L290 TraceCheckUtils]: 24: Hoare triple {48079#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {48080#(and (<= 6 main_~n_stones1~0) (<= main_~n_stones1~0 6))} is VALID [2022-04-27 22:26:44,376 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} {48058#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {48079#(and (<= 6 |main_#t~ret8|) (<= |main_#t~ret8| 6))} is VALID [2022-04-27 22:26:44,376 INFO L290 TraceCheckUtils]: 22: Hoare triple {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:44,376 INFO L290 TraceCheckUtils]: 21: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {48109#(and (<= 6 |correct_version_#res|) (<= |correct_version_#res| 6))} is VALID [2022-04-27 22:26:44,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:44,377 INFO L290 TraceCheckUtils]: 19: Hoare triple {48107#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48108#(and (<= 6 correct_version_~y~0) (<= correct_version_~y~0 6))} is VALID [2022-04-27 22:26:44,378 INFO L290 TraceCheckUtils]: 18: Hoare triple {48106#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48107#(and (<= 6 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 6))} is VALID [2022-04-27 22:26:44,378 INFO L290 TraceCheckUtils]: 17: Hoare triple {48105#(and (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 6))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48106#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 6) (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:26:44,378 INFO L290 TraceCheckUtils]: 16: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {48105#(and (<= 6 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 6))} is VALID [2022-04-27 22:26:44,378 INFO L290 TraceCheckUtils]: 15: Hoare triple {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:44,379 INFO L290 TraceCheckUtils]: 14: Hoare triple {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48104#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:26:44,379 INFO L290 TraceCheckUtils]: 13: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {48103#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:26:44,379 INFO L290 TraceCheckUtils]: 12: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,380 INFO L290 TraceCheckUtils]: 11: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,380 INFO L290 TraceCheckUtils]: 10: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,380 INFO L290 TraceCheckUtils]: 8: Hoare triple {48058#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {48102#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:26:44,381 INFO L272 TraceCheckUtils]: 7: Hoare triple {48058#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L290 TraceCheckUtils]: 6: Hoare triple {48058#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L290 TraceCheckUtils]: 5: Hoare triple {48058#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L272 TraceCheckUtils]: 4: Hoare triple {48058#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {48058#true} {48058#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L290 TraceCheckUtils]: 2: Hoare triple {48058#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L290 TraceCheckUtils]: 1: Hoare triple {48058#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L272 TraceCheckUtils]: 0: Hoare triple {48058#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {48058#true} is VALID [2022-04-27 22:26:44,381 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:26:44,381 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [805615190] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:44,381 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:44,382 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 24, 24] total 35 [2022-04-27 22:26:44,382 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1303285707] [2022-04-27 22:26:44,382 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:44,382 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 47 [2022-04-27 22:26:44,382 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:44,382 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:44,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:44,409 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 35 states [2022-04-27 22:26:44,409 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:44,409 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2022-04-27 22:26:44,410 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=85, Invalid=1105, Unknown=0, NotChecked=0, Total=1190 [2022-04-27 22:26:44,410 INFO L87 Difference]: Start difference. First operand 357 states and 416 transitions. Second operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:47,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:47,607 INFO L93 Difference]: Finished difference Result 375 states and 438 transitions. [2022-04-27 22:26:47,607 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 22:26:47,607 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 47 [2022-04-27 22:26:47,607 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:47,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:47,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 98 transitions. [2022-04-27 22:26:47,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:47,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 98 transitions. [2022-04-27 22:26:47,609 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 98 transitions. [2022-04-27 22:26:47,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:47,665 INFO L225 Difference]: With dead ends: 375 [2022-04-27 22:26:47,666 INFO L226 Difference]: Without dead ends: 359 [2022-04-27 22:26:47,667 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 80 SyntacticMatches, 9 SemanticMatches, 56 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 544 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=221, Invalid=3085, Unknown=0, NotChecked=0, Total=3306 [2022-04-27 22:26:47,667 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 76 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 1582 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 168 SdHoareTripleChecker+Invalid, 1614 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 1582 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:47,667 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 168 Invalid, 1614 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 1582 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 22:26:47,668 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 359 states. [2022-04-27 22:26:49,382 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 359 to 354. [2022-04-27 22:26:49,382 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:49,383 INFO L82 GeneralOperation]: Start isEquivalent. First operand 359 states. Second operand has 354 states, 300 states have (on average 1.18) internal successors, (354), 330 states have internal predecessors, (354), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:49,383 INFO L74 IsIncluded]: Start isIncluded. First operand 359 states. Second operand has 354 states, 300 states have (on average 1.18) internal successors, (354), 330 states have internal predecessors, (354), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:49,383 INFO L87 Difference]: Start difference. First operand 359 states. Second operand has 354 states, 300 states have (on average 1.18) internal successors, (354), 330 states have internal predecessors, (354), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:49,389 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:49,389 INFO L93 Difference]: Finished difference Result 359 states and 419 transitions. [2022-04-27 22:26:49,389 INFO L276 IsEmpty]: Start isEmpty. Operand 359 states and 419 transitions. [2022-04-27 22:26:49,390 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:49,390 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:49,390 INFO L74 IsIncluded]: Start isIncluded. First operand has 354 states, 300 states have (on average 1.18) internal successors, (354), 330 states have internal predecessors, (354), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) Second operand 359 states. [2022-04-27 22:26:49,390 INFO L87 Difference]: Start difference. First operand has 354 states, 300 states have (on average 1.18) internal successors, (354), 330 states have internal predecessors, (354), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) Second operand 359 states. [2022-04-27 22:26:49,405 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:49,405 INFO L93 Difference]: Finished difference Result 359 states and 419 transitions. [2022-04-27 22:26:49,405 INFO L276 IsEmpty]: Start isEmpty. Operand 359 states and 419 transitions. [2022-04-27 22:26:49,406 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:49,406 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:49,406 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:49,406 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:49,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 354 states, 300 states have (on average 1.18) internal successors, (354), 330 states have internal predecessors, (354), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (40), 18 states have call predecessors, (40), 18 states have call successors, (40) [2022-04-27 22:26:49,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 354 states to 354 states and 414 transitions. [2022-04-27 22:26:49,412 INFO L78 Accepts]: Start accepts. Automaton has 354 states and 414 transitions. Word has length 47 [2022-04-27 22:26:49,412 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:49,413 INFO L495 AbstractCegarLoop]: Abstraction has 354 states and 414 transitions. [2022-04-27 22:26:49,413 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 35 states, 32 states have (on average 1.46875) internal successors, (47), 29 states have internal predecessors, (47), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:26:49,413 INFO L276 IsEmpty]: Start isEmpty. Operand 354 states and 414 transitions. [2022-04-27 22:26:49,414 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-27 22:26:49,414 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:49,414 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:26:49,432 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Forceful destruction successful, exit code 0 [2022-04-27 22:26:49,631 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable46 [2022-04-27 22:26:49,631 INFO L420 AbstractCegarLoop]: === Iteration 48 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:49,631 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:49,631 INFO L85 PathProgramCache]: Analyzing trace with hash 942955759, now seen corresponding path program 38 times [2022-04-27 22:26:49,631 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:49,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [951194160] [2022-04-27 22:26:49,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:49,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:49,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:49,662 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:49,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:49,664 INFO L290 TraceCheckUtils]: 0: Hoare triple {50243#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {50205#true} is VALID [2022-04-27 22:26:49,664 INFO L290 TraceCheckUtils]: 1: Hoare triple {50205#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:49,664 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {50205#true} {50205#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:49,664 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:49,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:49,753 INFO L290 TraceCheckUtils]: 0: Hoare triple {50205#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {50244#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,754 INFO L290 TraceCheckUtils]: 1: Hoare triple {50244#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50245#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,754 INFO L290 TraceCheckUtils]: 2: Hoare triple {50245#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50246#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,755 INFO L290 TraceCheckUtils]: 3: Hoare triple {50246#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50247#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,755 INFO L290 TraceCheckUtils]: 4: Hoare triple {50247#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50248#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 3 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,756 INFO L290 TraceCheckUtils]: 5: Hoare triple {50248#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 3 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {50249#(and (<= (+ (* 3 correct_version_~a) 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,756 INFO L290 TraceCheckUtils]: 6: Hoare triple {50249#(and (<= (+ (* 3 correct_version_~a) 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,757 INFO L290 TraceCheckUtils]: 8: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,757 INFO L290 TraceCheckUtils]: 9: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,757 INFO L290 TraceCheckUtils]: 10: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,758 INFO L290 TraceCheckUtils]: 11: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,758 INFO L290 TraceCheckUtils]: 12: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,758 INFO L290 TraceCheckUtils]: 13: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,759 INFO L290 TraceCheckUtils]: 14: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,759 INFO L290 TraceCheckUtils]: 15: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,760 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {50205#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} is VALID [2022-04-27 22:26:49,760 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:26:49,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:49,858 INFO L290 TraceCheckUtils]: 0: Hoare triple {50205#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {50251#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {50251#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50252#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,859 INFO L290 TraceCheckUtils]: 2: Hoare triple {50252#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50253#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,860 INFO L290 TraceCheckUtils]: 3: Hoare triple {50253#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50254#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,860 INFO L290 TraceCheckUtils]: 4: Hoare triple {50254#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {50255#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 3 student_version_~a)))} is VALID [2022-04-27 22:26:49,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {50255#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,861 INFO L290 TraceCheckUtils]: 6: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,861 INFO L290 TraceCheckUtils]: 7: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,861 INFO L290 TraceCheckUtils]: 8: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,861 INFO L290 TraceCheckUtils]: 9: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,862 INFO L290 TraceCheckUtils]: 10: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,862 INFO L290 TraceCheckUtils]: 11: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,862 INFO L290 TraceCheckUtils]: 12: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,863 INFO L290 TraceCheckUtils]: 13: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,863 INFO L284 TraceCheckUtils]: 14: Hoare quadruple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {50206#false} is VALID [2022-04-27 22:26:49,864 INFO L272 TraceCheckUtils]: 0: Hoare triple {50205#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50243#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:49,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {50243#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {50205#true} is VALID [2022-04-27 22:26:49,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {50205#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:49,864 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50205#true} {50205#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:49,864 INFO L272 TraceCheckUtils]: 4: Hoare triple {50205#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:49,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {50205#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:49,864 INFO L290 TraceCheckUtils]: 6: Hoare triple {50205#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:49,864 INFO L272 TraceCheckUtils]: 7: Hoare triple {50205#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:49,865 INFO L290 TraceCheckUtils]: 8: Hoare triple {50205#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {50244#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,865 INFO L290 TraceCheckUtils]: 9: Hoare triple {50244#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50245#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,866 INFO L290 TraceCheckUtils]: 10: Hoare triple {50245#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50246#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {50246#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50247#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,867 INFO L290 TraceCheckUtils]: 12: Hoare triple {50247#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50248#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 3 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {50248#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 3 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {50249#(and (<= (+ (* 3 correct_version_~a) 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:49,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {50249#(and (<= (+ (* 3 correct_version_~a) 1) |correct_version_#in~n|) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,868 INFO L290 TraceCheckUtils]: 15: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,868 INFO L290 TraceCheckUtils]: 16: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,868 INFO L290 TraceCheckUtils]: 17: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,869 INFO L290 TraceCheckUtils]: 18: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,869 INFO L290 TraceCheckUtils]: 19: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,869 INFO L290 TraceCheckUtils]: 20: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,870 INFO L290 TraceCheckUtils]: 21: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,870 INFO L290 TraceCheckUtils]: 22: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,870 INFO L290 TraceCheckUtils]: 23: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:49,871 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {50205#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} is VALID [2022-04-27 22:26:49,871 INFO L290 TraceCheckUtils]: 25: Hoare triple {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} is VALID [2022-04-27 22:26:49,871 INFO L272 TraceCheckUtils]: 26: Hoare triple {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:49,872 INFO L290 TraceCheckUtils]: 27: Hoare triple {50205#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {50251#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,872 INFO L290 TraceCheckUtils]: 28: Hoare triple {50251#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50252#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,873 INFO L290 TraceCheckUtils]: 29: Hoare triple {50252#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50253#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,873 INFO L290 TraceCheckUtils]: 30: Hoare triple {50253#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50254#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:26:49,874 INFO L290 TraceCheckUtils]: 31: Hoare triple {50254#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {50255#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 3 student_version_~a)))} is VALID [2022-04-27 22:26:49,874 INFO L290 TraceCheckUtils]: 32: Hoare triple {50255#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,874 INFO L290 TraceCheckUtils]: 33: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,875 INFO L290 TraceCheckUtils]: 34: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,875 INFO L290 TraceCheckUtils]: 35: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,875 INFO L290 TraceCheckUtils]: 36: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,875 INFO L290 TraceCheckUtils]: 37: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,876 INFO L290 TraceCheckUtils]: 38: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,876 INFO L290 TraceCheckUtils]: 39: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,876 INFO L290 TraceCheckUtils]: 40: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:49,877 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {50206#false} is VALID [2022-04-27 22:26:49,877 INFO L290 TraceCheckUtils]: 42: Hoare triple {50206#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {50206#false} is VALID [2022-04-27 22:26:49,877 INFO L272 TraceCheckUtils]: 43: Hoare triple {50206#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {50206#false} is VALID [2022-04-27 22:26:49,877 INFO L290 TraceCheckUtils]: 44: Hoare triple {50206#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {50206#false} is VALID [2022-04-27 22:26:49,877 INFO L290 TraceCheckUtils]: 45: Hoare triple {50206#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {50206#false} is VALID [2022-04-27 22:26:49,877 INFO L290 TraceCheckUtils]: 46: Hoare triple {50206#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50206#false} is VALID [2022-04-27 22:26:49,877 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 22:26:49,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:49,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [951194160] [2022-04-27 22:26:49,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [951194160] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:49,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [610914219] [2022-04-27 22:26:49,878 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:26:49,878 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:49,878 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:49,879 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:49,880 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-27 22:26:49,949 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:26:49,949 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:26:49,950 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 22:26:49,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:49,961 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:50,688 INFO L272 TraceCheckUtils]: 0: Hoare triple {50205#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:50,688 INFO L290 TraceCheckUtils]: 1: Hoare triple {50205#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {50205#true} is VALID [2022-04-27 22:26:50,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {50205#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:50,688 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50205#true} {50205#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:50,688 INFO L272 TraceCheckUtils]: 4: Hoare triple {50205#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:50,688 INFO L290 TraceCheckUtils]: 5: Hoare triple {50205#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:50,688 INFO L290 TraceCheckUtils]: 6: Hoare triple {50205#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:50,689 INFO L272 TraceCheckUtils]: 7: Hoare triple {50205#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:50,689 INFO L290 TraceCheckUtils]: 8: Hoare triple {50205#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {50284#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:50,689 INFO L290 TraceCheckUtils]: 9: Hoare triple {50284#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50288#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:50,690 INFO L290 TraceCheckUtils]: 10: Hoare triple {50288#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50292#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:50,690 INFO L290 TraceCheckUtils]: 11: Hoare triple {50292#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50296#(and (<= |correct_version_#in~a| (div correct_version_~b~0 3)) (<= correct_version_~n |correct_version_#in~n|))} is VALID [2022-04-27 22:26:50,691 INFO L290 TraceCheckUtils]: 12: Hoare triple {50296#(and (<= |correct_version_#in~a| (div correct_version_~b~0 3)) (<= correct_version_~n |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,691 INFO L290 TraceCheckUtils]: 13: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,692 INFO L290 TraceCheckUtils]: 14: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,692 INFO L290 TraceCheckUtils]: 15: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,692 INFO L290 TraceCheckUtils]: 16: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,693 INFO L290 TraceCheckUtils]: 17: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,693 INFO L290 TraceCheckUtils]: 18: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,693 INFO L290 TraceCheckUtils]: 19: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,693 INFO L290 TraceCheckUtils]: 20: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,694 INFO L290 TraceCheckUtils]: 21: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,694 INFO L290 TraceCheckUtils]: 22: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,694 INFO L290 TraceCheckUtils]: 23: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:50,695 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {50205#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} is VALID [2022-04-27 22:26:50,695 INFO L290 TraceCheckUtils]: 25: Hoare triple {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} is VALID [2022-04-27 22:26:50,695 INFO L272 TraceCheckUtils]: 26: Hoare triple {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:50,696 INFO L290 TraceCheckUtils]: 27: Hoare triple {50205#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {50345#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:26:50,696 INFO L290 TraceCheckUtils]: 28: Hoare triple {50345#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50349#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} is VALID [2022-04-27 22:26:50,697 INFO L290 TraceCheckUtils]: 29: Hoare triple {50349#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50353#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:26:50,697 INFO L290 TraceCheckUtils]: 30: Hoare triple {50353#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* 2 student_version_~a)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50357#(and (<= |student_version_#in~n| student_version_~n) (<= (div (- student_version_~b~1) (- 3)) |student_version_#in~a|))} is VALID [2022-04-27 22:26:50,698 INFO L290 TraceCheckUtils]: 31: Hoare triple {50357#(and (<= |student_version_#in~n| student_version_~n) (<= (div (- student_version_~b~1) (- 3)) |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,698 INFO L290 TraceCheckUtils]: 32: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,698 INFO L290 TraceCheckUtils]: 33: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,698 INFO L290 TraceCheckUtils]: 34: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,699 INFO L290 TraceCheckUtils]: 35: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,699 INFO L290 TraceCheckUtils]: 36: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,699 INFO L290 TraceCheckUtils]: 37: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,700 INFO L290 TraceCheckUtils]: 38: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,700 INFO L290 TraceCheckUtils]: 39: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,700 INFO L290 TraceCheckUtils]: 40: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:50,701 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {50206#false} is VALID [2022-04-27 22:26:50,701 INFO L290 TraceCheckUtils]: 42: Hoare triple {50206#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {50206#false} is VALID [2022-04-27 22:26:50,701 INFO L272 TraceCheckUtils]: 43: Hoare triple {50206#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {50206#false} is VALID [2022-04-27 22:26:50,701 INFO L290 TraceCheckUtils]: 44: Hoare triple {50206#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {50206#false} is VALID [2022-04-27 22:26:50,701 INFO L290 TraceCheckUtils]: 45: Hoare triple {50206#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {50206#false} is VALID [2022-04-27 22:26:50,701 INFO L290 TraceCheckUtils]: 46: Hoare triple {50206#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50206#false} is VALID [2022-04-27 22:26:50,701 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-27 22:26:50,701 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:26:51,761 INFO L290 TraceCheckUtils]: 46: Hoare triple {50206#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50206#false} is VALID [2022-04-27 22:26:51,762 INFO L290 TraceCheckUtils]: 45: Hoare triple {50206#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {50206#false} is VALID [2022-04-27 22:26:51,762 INFO L290 TraceCheckUtils]: 44: Hoare triple {50206#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {50206#false} is VALID [2022-04-27 22:26:51,762 INFO L272 TraceCheckUtils]: 43: Hoare triple {50206#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {50206#false} is VALID [2022-04-27 22:26:51,762 INFO L290 TraceCheckUtils]: 42: Hoare triple {50206#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {50206#false} is VALID [2022-04-27 22:26:51,763 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {50206#false} is VALID [2022-04-27 22:26:51,763 INFO L290 TraceCheckUtils]: 40: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,763 INFO L290 TraceCheckUtils]: 39: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,763 INFO L290 TraceCheckUtils]: 38: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,764 INFO L290 TraceCheckUtils]: 37: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,764 INFO L290 TraceCheckUtils]: 36: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,764 INFO L290 TraceCheckUtils]: 35: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,765 INFO L290 TraceCheckUtils]: 34: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,765 INFO L290 TraceCheckUtils]: 33: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,765 INFO L290 TraceCheckUtils]: 32: Hoare triple {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,765 INFO L290 TraceCheckUtils]: 31: Hoare triple {50454#(or (< student_version_~b~1 student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 3)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {50256#(<= |student_version_#in~n| (* |student_version_#in~a| 3))} is VALID [2022-04-27 22:26:51,766 INFO L290 TraceCheckUtils]: 30: Hoare triple {50458#(or (< (+ student_version_~b~1 student_version_~a) student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 3)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50454#(or (< student_version_~b~1 student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:26:51,766 INFO L290 TraceCheckUtils]: 29: Hoare triple {50462#(or (<= |student_version_#in~n| (* |student_version_#in~a| 3)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50458#(or (< (+ student_version_~b~1 student_version_~a) student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:26:51,767 INFO L290 TraceCheckUtils]: 28: Hoare triple {50466#(or (< (+ (* 3 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 3)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {50462#(or (<= |student_version_#in~n| (* |student_version_#in~a| 3)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} is VALID [2022-04-27 22:26:51,767 INFO L290 TraceCheckUtils]: 27: Hoare triple {50205#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {50466#(or (< (+ (* 3 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 3)))} is VALID [2022-04-27 22:26:51,767 INFO L272 TraceCheckUtils]: 26: Hoare triple {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:51,768 INFO L290 TraceCheckUtils]: 25: Hoare triple {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} is VALID [2022-04-27 22:26:51,768 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {50205#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {50227#(<= (+ (* main_~a~0 3) 1) main_~n~0)} is VALID [2022-04-27 22:26:51,768 INFO L290 TraceCheckUtils]: 23: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,769 INFO L290 TraceCheckUtils]: 22: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,769 INFO L290 TraceCheckUtils]: 20: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,769 INFO L290 TraceCheckUtils]: 19: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,770 INFO L290 TraceCheckUtils]: 18: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,770 INFO L290 TraceCheckUtils]: 17: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,770 INFO L290 TraceCheckUtils]: 16: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,770 INFO L290 TraceCheckUtils]: 15: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,771 INFO L290 TraceCheckUtils]: 14: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,771 INFO L290 TraceCheckUtils]: 13: Hoare triple {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,771 INFO L290 TraceCheckUtils]: 12: Hoare triple {50515#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50250#(<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:26:51,772 INFO L290 TraceCheckUtils]: 11: Hoare triple {50519#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50515#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:26:51,772 INFO L290 TraceCheckUtils]: 10: Hoare triple {50523#(or (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50519#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:26:51,772 INFO L290 TraceCheckUtils]: 9: Hoare triple {50527#(or (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 3 correct_version_~a))))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {50523#(or (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)))} is VALID [2022-04-27 22:26:51,773 INFO L290 TraceCheckUtils]: 8: Hoare triple {50205#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {50527#(or (<= (+ (* 3 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 3 correct_version_~a))))} is VALID [2022-04-27 22:26:51,773 INFO L272 TraceCheckUtils]: 7: Hoare triple {50205#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:51,773 INFO L290 TraceCheckUtils]: 6: Hoare triple {50205#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:51,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {50205#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {50205#true} is VALID [2022-04-27 22:26:51,773 INFO L272 TraceCheckUtils]: 4: Hoare triple {50205#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:51,773 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50205#true} {50205#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:51,773 INFO L290 TraceCheckUtils]: 2: Hoare triple {50205#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:51,773 INFO L290 TraceCheckUtils]: 1: Hoare triple {50205#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {50205#true} is VALID [2022-04-27 22:26:51,773 INFO L272 TraceCheckUtils]: 0: Hoare triple {50205#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {50205#true} is VALID [2022-04-27 22:26:51,774 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-27 22:26:51,774 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [610914219] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:26:51,774 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:26:51,774 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13, 13] total 33 [2022-04-27 22:26:51,774 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [587584799] [2022-04-27 22:26:51,774 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:26:51,774 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 47 [2022-04-27 22:26:51,774 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:26:51,775 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:51,801 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:51,801 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-04-27 22:26:51,801 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:26:51,802 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-04-27 22:26:51,802 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=945, Unknown=0, NotChecked=0, Total=1056 [2022-04-27 22:26:51,802 INFO L87 Difference]: Start difference. First operand 354 states and 414 transitions. Second operand has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:55,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:55,345 INFO L93 Difference]: Finished difference Result 368 states and 427 transitions. [2022-04-27 22:26:55,345 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-27 22:26:55,345 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 47 [2022-04-27 22:26:55,345 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:26:55,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:55,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 109 transitions. [2022-04-27 22:26:55,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:55,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 109 transitions. [2022-04-27 22:26:55,347 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 109 transitions. [2022-04-27 22:26:55,406 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:26:55,413 INFO L225 Difference]: With dead ends: 368 [2022-04-27 22:26:55,413 INFO L226 Difference]: Without dead ends: 346 [2022-04-27 22:26:55,414 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 76 SyntacticMatches, 6 SemanticMatches, 47 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 301 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=252, Invalid=2100, Unknown=0, NotChecked=0, Total=2352 [2022-04-27 22:26:55,414 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 370 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 1045 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 377 SdHoareTripleChecker+Valid, 124 SdHoareTripleChecker+Invalid, 1079 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 1045 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:26:55,414 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [377 Valid, 124 Invalid, 1079 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 1045 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 22:26:55,415 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 346 states. [2022-04-27 22:26:57,236 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 346 to 344. [2022-04-27 22:26:57,236 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:26:57,237 INFO L82 GeneralOperation]: Start isEquivalent. First operand 346 states. Second operand has 344 states, 290 states have (on average 1.1793103448275861) internal successors, (342), 320 states have internal predecessors, (342), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (36), 18 states have call predecessors, (36), 18 states have call successors, (36) [2022-04-27 22:26:57,237 INFO L74 IsIncluded]: Start isIncluded. First operand 346 states. Second operand has 344 states, 290 states have (on average 1.1793103448275861) internal successors, (342), 320 states have internal predecessors, (342), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (36), 18 states have call predecessors, (36), 18 states have call successors, (36) [2022-04-27 22:26:57,237 INFO L87 Difference]: Start difference. First operand 346 states. Second operand has 344 states, 290 states have (on average 1.1793103448275861) internal successors, (342), 320 states have internal predecessors, (342), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (36), 18 states have call predecessors, (36), 18 states have call successors, (36) [2022-04-27 22:26:57,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:57,243 INFO L93 Difference]: Finished difference Result 346 states and 400 transitions. [2022-04-27 22:26:57,243 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 400 transitions. [2022-04-27 22:26:57,244 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:57,244 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:57,244 INFO L74 IsIncluded]: Start isIncluded. First operand has 344 states, 290 states have (on average 1.1793103448275861) internal successors, (342), 320 states have internal predecessors, (342), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (36), 18 states have call predecessors, (36), 18 states have call successors, (36) Second operand 346 states. [2022-04-27 22:26:57,244 INFO L87 Difference]: Start difference. First operand has 344 states, 290 states have (on average 1.1793103448275861) internal successors, (342), 320 states have internal predecessors, (342), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (36), 18 states have call predecessors, (36), 18 states have call successors, (36) Second operand 346 states. [2022-04-27 22:26:57,250 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:26:57,251 INFO L93 Difference]: Finished difference Result 346 states and 400 transitions. [2022-04-27 22:26:57,251 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 400 transitions. [2022-04-27 22:26:57,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:26:57,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:26:57,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:26:57,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:26:57,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 344 states, 290 states have (on average 1.1793103448275861) internal successors, (342), 320 states have internal predecessors, (342), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (36), 18 states have call predecessors, (36), 18 states have call successors, (36) [2022-04-27 22:26:57,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 344 states to 344 states and 398 transitions. [2022-04-27 22:26:57,258 INFO L78 Accepts]: Start accepts. Automaton has 344 states and 398 transitions. Word has length 47 [2022-04-27 22:26:57,259 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:26:57,259 INFO L495 AbstractCegarLoop]: Abstraction has 344 states and 398 transitions. [2022-04-27 22:26:57,259 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 33 states have (on average 1.7575757575757576) internal successors, (58), 32 states have internal predecessors, (58), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:26:57,259 INFO L276 IsEmpty]: Start isEmpty. Operand 344 states and 398 transitions. [2022-04-27 22:26:57,260 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 22:26:57,260 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:26:57,260 INFO L195 NwaCegarLoop]: trace histogram [7, 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, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:26:57,277 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Ended with exit code 0 [2022-04-27 22:26:57,479 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable47 [2022-04-27 22:26:57,479 INFO L420 AbstractCegarLoop]: === Iteration 49 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:26:57,479 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:26:57,480 INFO L85 PathProgramCache]: Analyzing trace with hash -462816845, now seen corresponding path program 39 times [2022-04-27 22:26:57,480 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:26:57,480 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [170630900] [2022-04-27 22:26:57,480 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:26:57,480 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:26:57,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:57,508 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:26:57,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:57,512 INFO L290 TraceCheckUtils]: 0: Hoare triple {52318#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {52279#true} is VALID [2022-04-27 22:26:57,512 INFO L290 TraceCheckUtils]: 1: Hoare triple {52279#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:57,512 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {52279#true} {52279#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:57,512 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:26:57,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:57,622 INFO L290 TraceCheckUtils]: 0: Hoare triple {52279#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:26:57,623 INFO L290 TraceCheckUtils]: 1: Hoare triple {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:26:57,623 INFO L290 TraceCheckUtils]: 2: Hoare triple {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:26:57,624 INFO L290 TraceCheckUtils]: 3: Hoare triple {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52320#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:26:57,624 INFO L290 TraceCheckUtils]: 4: Hoare triple {52320#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52321#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:57,625 INFO L290 TraceCheckUtils]: 5: Hoare triple {52321#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52322#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:57,625 INFO L290 TraceCheckUtils]: 6: Hoare triple {52322#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52323#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:26:57,626 INFO L290 TraceCheckUtils]: 7: Hoare triple {52323#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52324#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:57,626 INFO L290 TraceCheckUtils]: 8: Hoare triple {52324#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52325#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 |correct_version_#in~a|)))} is VALID [2022-04-27 22:26:57,627 INFO L290 TraceCheckUtils]: 9: Hoare triple {52325#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,627 INFO L290 TraceCheckUtils]: 10: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,627 INFO L290 TraceCheckUtils]: 11: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,628 INFO L290 TraceCheckUtils]: 12: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,628 INFO L290 TraceCheckUtils]: 13: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,628 INFO L290 TraceCheckUtils]: 14: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,629 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} {52279#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {52300#(<= main_~m~0 (* main_~a~0 6))} is VALID [2022-04-27 22:26:57,629 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-04-27 22:26:57,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:57,812 INFO L290 TraceCheckUtils]: 0: Hoare triple {52279#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,812 INFO L290 TraceCheckUtils]: 1: Hoare triple {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,813 INFO L290 TraceCheckUtils]: 2: Hoare triple {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,813 INFO L290 TraceCheckUtils]: 3: Hoare triple {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52328#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:26:57,814 INFO L290 TraceCheckUtils]: 4: Hoare triple {52328#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52329#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,814 INFO L290 TraceCheckUtils]: 5: Hoare triple {52329#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52330#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,815 INFO L290 TraceCheckUtils]: 6: Hoare triple {52330#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52331#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:26:57,815 INFO L290 TraceCheckUtils]: 7: Hoare triple {52331#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52332#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:26:57,816 INFO L290 TraceCheckUtils]: 8: Hoare triple {52332#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52333#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,816 INFO L290 TraceCheckUtils]: 9: Hoare triple {52333#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52334#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 6) 1) student_version_~m))} is VALID [2022-04-27 22:26:57,817 INFO L290 TraceCheckUtils]: 10: Hoare triple {52334#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 6) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,817 INFO L290 TraceCheckUtils]: 11: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,817 INFO L290 TraceCheckUtils]: 12: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,818 INFO L290 TraceCheckUtils]: 13: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,818 INFO L290 TraceCheckUtils]: 14: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,818 INFO L290 TraceCheckUtils]: 15: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,819 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} {52300#(<= main_~m~0 (* main_~a~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {52280#false} is VALID [2022-04-27 22:26:57,820 INFO L272 TraceCheckUtils]: 0: Hoare triple {52279#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52318#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:26:57,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {52318#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {52279#true} is VALID [2022-04-27 22:26:57,820 INFO L290 TraceCheckUtils]: 2: Hoare triple {52279#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:57,820 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {52279#true} {52279#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:57,820 INFO L272 TraceCheckUtils]: 4: Hoare triple {52279#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:57,820 INFO L290 TraceCheckUtils]: 5: Hoare triple {52279#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {52279#true} is VALID [2022-04-27 22:26:57,820 INFO L290 TraceCheckUtils]: 6: Hoare triple {52279#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:57,820 INFO L272 TraceCheckUtils]: 7: Hoare triple {52279#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {52279#true} is VALID [2022-04-27 22:26:57,820 INFO L290 TraceCheckUtils]: 8: Hoare triple {52279#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:26:57,821 INFO L290 TraceCheckUtils]: 9: Hoare triple {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:26:57,821 INFO L290 TraceCheckUtils]: 10: Hoare triple {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:26:57,822 INFO L290 TraceCheckUtils]: 11: Hoare triple {52319#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52320#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:26:57,822 INFO L290 TraceCheckUtils]: 12: Hoare triple {52320#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52321#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:57,823 INFO L290 TraceCheckUtils]: 13: Hoare triple {52321#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52322#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:57,823 INFO L290 TraceCheckUtils]: 14: Hoare triple {52322#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52323#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:26:57,824 INFO L290 TraceCheckUtils]: 15: Hoare triple {52323#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52324#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:26:57,824 INFO L290 TraceCheckUtils]: 16: Hoare triple {52324#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52325#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 |correct_version_#in~a|)))} is VALID [2022-04-27 22:26:57,825 INFO L290 TraceCheckUtils]: 17: Hoare triple {52325#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,825 INFO L290 TraceCheckUtils]: 18: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,826 INFO L290 TraceCheckUtils]: 19: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,826 INFO L290 TraceCheckUtils]: 20: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,826 INFO L290 TraceCheckUtils]: 21: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,826 INFO L290 TraceCheckUtils]: 22: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:57,827 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} {52279#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {52300#(<= main_~m~0 (* main_~a~0 6))} is VALID [2022-04-27 22:26:57,828 INFO L290 TraceCheckUtils]: 24: Hoare triple {52300#(<= main_~m~0 (* main_~a~0 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {52300#(<= main_~m~0 (* main_~a~0 6))} is VALID [2022-04-27 22:26:57,828 INFO L272 TraceCheckUtils]: 25: Hoare triple {52300#(<= main_~m~0 (* main_~a~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {52279#true} is VALID [2022-04-27 22:26:57,828 INFO L290 TraceCheckUtils]: 26: Hoare triple {52279#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,828 INFO L290 TraceCheckUtils]: 27: Hoare triple {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,829 INFO L290 TraceCheckUtils]: 28: Hoare triple {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,829 INFO L290 TraceCheckUtils]: 29: Hoare triple {52327#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52328#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:26:57,830 INFO L290 TraceCheckUtils]: 30: Hoare triple {52328#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52329#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {52329#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52330#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,831 INFO L290 TraceCheckUtils]: 32: Hoare triple {52330#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52331#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:26:57,831 INFO L290 TraceCheckUtils]: 33: Hoare triple {52331#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52332#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:26:57,832 INFO L290 TraceCheckUtils]: 34: Hoare triple {52332#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52333#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:26:57,833 INFO L290 TraceCheckUtils]: 35: Hoare triple {52333#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52334#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 6) 1) student_version_~m))} is VALID [2022-04-27 22:26:57,833 INFO L290 TraceCheckUtils]: 36: Hoare triple {52334#(and (= |student_version_#in~m| student_version_~m) (<= (+ (* |student_version_#in~a| 6) 1) student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,833 INFO L290 TraceCheckUtils]: 37: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,833 INFO L290 TraceCheckUtils]: 38: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,834 INFO L290 TraceCheckUtils]: 39: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,834 INFO L290 TraceCheckUtils]: 40: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,834 INFO L290 TraceCheckUtils]: 41: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:57,835 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} {52300#(<= main_~m~0 (* main_~a~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {52280#false} is VALID [2022-04-27 22:26:57,835 INFO L290 TraceCheckUtils]: 43: Hoare triple {52280#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {52280#false} is VALID [2022-04-27 22:26:57,835 INFO L272 TraceCheckUtils]: 44: Hoare triple {52280#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {52280#false} is VALID [2022-04-27 22:26:57,835 INFO L290 TraceCheckUtils]: 45: Hoare triple {52280#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {52280#false} is VALID [2022-04-27 22:26:57,835 INFO L290 TraceCheckUtils]: 46: Hoare triple {52280#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {52280#false} is VALID [2022-04-27 22:26:57,835 INFO L290 TraceCheckUtils]: 47: Hoare triple {52280#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52280#false} is VALID [2022-04-27 22:26:57,836 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:26:57,836 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:26:57,836 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [170630900] [2022-04-27 22:26:57,836 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [170630900] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:26:57,836 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2005690365] [2022-04-27 22:26:57,836 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:26:57,836 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:26:57,836 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:26:57,837 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:26:57,838 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-27 22:26:57,906 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2022-04-27 22:26:57,907 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:26:57,908 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-27 22:26:57,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:26:57,921 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:26:58,951 INFO L272 TraceCheckUtils]: 0: Hoare triple {52279#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L290 TraceCheckUtils]: 1: Hoare triple {52279#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L290 TraceCheckUtils]: 2: Hoare triple {52279#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {52279#true} {52279#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L272 TraceCheckUtils]: 4: Hoare triple {52279#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L290 TraceCheckUtils]: 5: Hoare triple {52279#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L290 TraceCheckUtils]: 6: Hoare triple {52279#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L272 TraceCheckUtils]: 7: Hoare triple {52279#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {52279#true} is VALID [2022-04-27 22:26:58,952 INFO L290 TraceCheckUtils]: 8: Hoare triple {52279#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {52363#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,953 INFO L290 TraceCheckUtils]: 9: Hoare triple {52363#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {52363#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,953 INFO L290 TraceCheckUtils]: 10: Hoare triple {52363#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {52363#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,954 INFO L290 TraceCheckUtils]: 11: Hoare triple {52363#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52373#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,954 INFO L290 TraceCheckUtils]: 12: Hoare triple {52373#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52377#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,954 INFO L290 TraceCheckUtils]: 13: Hoare triple {52377#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52381#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,955 INFO L290 TraceCheckUtils]: 14: Hoare triple {52381#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52385#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,955 INFO L290 TraceCheckUtils]: 15: Hoare triple {52385#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52389#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,956 INFO L290 TraceCheckUtils]: 16: Hoare triple {52389#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52393#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 6)) |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,956 INFO L290 TraceCheckUtils]: 17: Hoare triple {52393#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 6)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,956 INFO L290 TraceCheckUtils]: 18: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,957 INFO L290 TraceCheckUtils]: 19: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,957 INFO L290 TraceCheckUtils]: 20: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,957 INFO L290 TraceCheckUtils]: 21: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,957 INFO L290 TraceCheckUtils]: 22: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:26:58,958 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} {52279#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {52300#(<= main_~m~0 (* main_~a~0 6))} is VALID [2022-04-27 22:26:58,958 INFO L290 TraceCheckUtils]: 24: Hoare triple {52300#(<= main_~m~0 (* main_~a~0 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {52300#(<= main_~m~0 (* main_~a~0 6))} is VALID [2022-04-27 22:26:58,958 INFO L272 TraceCheckUtils]: 25: Hoare triple {52300#(<= main_~m~0 (* main_~a~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {52279#true} is VALID [2022-04-27 22:26:58,958 INFO L290 TraceCheckUtils]: 26: Hoare triple {52279#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {52424#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:26:58,959 INFO L290 TraceCheckUtils]: 27: Hoare triple {52424#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {52424#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:26:58,959 INFO L290 TraceCheckUtils]: 28: Hoare triple {52424#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {52424#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:26:58,959 INFO L290 TraceCheckUtils]: 29: Hoare triple {52424#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52434#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:26:58,960 INFO L290 TraceCheckUtils]: 30: Hoare triple {52434#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52438#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:26:58,960 INFO L290 TraceCheckUtils]: 31: Hoare triple {52438#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52442#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:26:58,961 INFO L290 TraceCheckUtils]: 32: Hoare triple {52442#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52446#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:26:58,961 INFO L290 TraceCheckUtils]: 33: Hoare triple {52446#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52450#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:26:58,961 INFO L290 TraceCheckUtils]: 34: Hoare triple {52450#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52454#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 6)))} is VALID [2022-04-27 22:26:58,962 INFO L290 TraceCheckUtils]: 35: Hoare triple {52454#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 6)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:58,962 INFO L290 TraceCheckUtils]: 36: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:58,962 INFO L290 TraceCheckUtils]: 37: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:58,962 INFO L290 TraceCheckUtils]: 38: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:58,963 INFO L290 TraceCheckUtils]: 39: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:58,963 INFO L290 TraceCheckUtils]: 40: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:58,963 INFO L290 TraceCheckUtils]: 41: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:26:58,964 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} {52300#(<= main_~m~0 (* main_~a~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {52280#false} is VALID [2022-04-27 22:26:58,964 INFO L290 TraceCheckUtils]: 43: Hoare triple {52280#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {52280#false} is VALID [2022-04-27 22:26:58,964 INFO L272 TraceCheckUtils]: 44: Hoare triple {52280#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {52280#false} is VALID [2022-04-27 22:26:58,964 INFO L290 TraceCheckUtils]: 45: Hoare triple {52280#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {52280#false} is VALID [2022-04-27 22:26:58,964 INFO L290 TraceCheckUtils]: 46: Hoare triple {52280#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {52280#false} is VALID [2022-04-27 22:26:58,964 INFO L290 TraceCheckUtils]: 47: Hoare triple {52280#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52280#false} is VALID [2022-04-27 22:26:58,964 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:26:58,964 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:27:00,171 INFO L290 TraceCheckUtils]: 47: Hoare triple {52280#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52280#false} is VALID [2022-04-27 22:27:00,172 INFO L290 TraceCheckUtils]: 46: Hoare triple {52280#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {52280#false} is VALID [2022-04-27 22:27:00,172 INFO L290 TraceCheckUtils]: 45: Hoare triple {52280#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {52280#false} is VALID [2022-04-27 22:27:00,172 INFO L272 TraceCheckUtils]: 44: Hoare triple {52280#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {52280#false} is VALID [2022-04-27 22:27:00,172 INFO L290 TraceCheckUtils]: 43: Hoare triple {52280#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {52280#false} is VALID [2022-04-27 22:27:00,173 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} {52300#(<= main_~m~0 (* main_~a~0 6))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {52280#false} is VALID [2022-04-27 22:27:00,173 INFO L290 TraceCheckUtils]: 41: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:27:00,173 INFO L290 TraceCheckUtils]: 40: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:27:00,173 INFO L290 TraceCheckUtils]: 39: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:27:00,173 INFO L290 TraceCheckUtils]: 38: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:27:00,173 INFO L290 TraceCheckUtils]: 37: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:27:00,174 INFO L290 TraceCheckUtils]: 36: Hoare triple {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:27:00,174 INFO L290 TraceCheckUtils]: 35: Hoare triple {52533#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52335#(<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:27:00,174 INFO L290 TraceCheckUtils]: 34: Hoare triple {52537#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52533#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:27:00,175 INFO L290 TraceCheckUtils]: 33: Hoare triple {52541#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52537#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:27:00,175 INFO L290 TraceCheckUtils]: 32: Hoare triple {52545#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52541#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:27:00,176 INFO L290 TraceCheckUtils]: 31: Hoare triple {52549#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52545#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:27:00,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {52553#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52549#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))))} is VALID [2022-04-27 22:27:00,177 INFO L290 TraceCheckUtils]: 29: Hoare triple {52557#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {52553#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:27:00,177 INFO L290 TraceCheckUtils]: 28: Hoare triple {52557#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {52557#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:27:00,177 INFO L290 TraceCheckUtils]: 27: Hoare triple {52557#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {52557#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:27:00,178 INFO L290 TraceCheckUtils]: 26: Hoare triple {52279#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {52557#(or (<= (+ (* |student_version_#in~a| 6) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:27:00,178 INFO L272 TraceCheckUtils]: 25: Hoare triple {52300#(<= main_~m~0 (* main_~a~0 6))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {52279#true} is VALID [2022-04-27 22:27:00,178 INFO L290 TraceCheckUtils]: 24: Hoare triple {52300#(<= main_~m~0 (* main_~a~0 6))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {52300#(<= main_~m~0 (* main_~a~0 6))} is VALID [2022-04-27 22:27:00,179 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} {52279#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {52300#(<= main_~m~0 (* main_~a~0 6))} is VALID [2022-04-27 22:27:00,179 INFO L290 TraceCheckUtils]: 22: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:27:00,179 INFO L290 TraceCheckUtils]: 21: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:27:00,180 INFO L290 TraceCheckUtils]: 20: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:27:00,180 INFO L290 TraceCheckUtils]: 19: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:27:00,180 INFO L290 TraceCheckUtils]: 18: Hoare triple {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:27:00,180 INFO L290 TraceCheckUtils]: 17: Hoare triple {52594#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {52326#(<= |correct_version_#in~m| (* 6 |correct_version_#in~a|))} is VALID [2022-04-27 22:27:00,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {52598#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52594#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} is VALID [2022-04-27 22:27:00,181 INFO L290 TraceCheckUtils]: 15: Hoare triple {52602#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52598#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:27:00,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {52606#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52602#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)))} is VALID [2022-04-27 22:27:00,182 INFO L290 TraceCheckUtils]: 13: Hoare triple {52610#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52606#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)))} is VALID [2022-04-27 22:27:00,183 INFO L290 TraceCheckUtils]: 12: Hoare triple {52614#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52610#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)))} is VALID [2022-04-27 22:27:00,183 INFO L290 TraceCheckUtils]: 11: Hoare triple {52618#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {52614#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:27:00,183 INFO L290 TraceCheckUtils]: 10: Hoare triple {52618#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {52618#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:27:00,184 INFO L290 TraceCheckUtils]: 9: Hoare triple {52618#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {52618#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:27:00,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {52279#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {52618#(or (<= |correct_version_#in~m| (* 6 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:27:00,184 INFO L272 TraceCheckUtils]: 7: Hoare triple {52279#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {52279#true} is VALID [2022-04-27 22:27:00,184 INFO L290 TraceCheckUtils]: 6: Hoare triple {52279#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:27:00,184 INFO L290 TraceCheckUtils]: 5: Hoare triple {52279#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {52279#true} is VALID [2022-04-27 22:27:00,184 INFO L272 TraceCheckUtils]: 4: Hoare triple {52279#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:27:00,184 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {52279#true} {52279#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:27:00,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {52279#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:27:00,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {52279#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {52279#true} is VALID [2022-04-27 22:27:00,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {52279#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52279#true} is VALID [2022-04-27 22:27:00,185 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 7 proven. 42 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:27:00,185 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2005690365] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:27:00,185 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:27:00,185 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 19, 19] total 49 [2022-04-27 22:27:00,185 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [700907733] [2022-04-27 22:27:00,185 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:27:00,186 INFO L78 Accepts]: Start accepts. Automaton has has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 48 [2022-04-27 22:27:00,186 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:27:00,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:00,227 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-27 22:27:00,228 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 49 states [2022-04-27 22:27:00,228 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:27:00,228 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 49 interpolants. [2022-04-27 22:27:00,228 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=159, Invalid=2193, Unknown=0, NotChecked=0, Total=2352 [2022-04-27 22:27:00,229 INFO L87 Difference]: Start difference. First operand 344 states and 398 transitions. Second operand has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:06,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:06,029 INFO L93 Difference]: Finished difference Result 410 states and 477 transitions. [2022-04-27 22:27:06,029 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-04-27 22:27:06,029 INFO L78 Accepts]: Start accepts. Automaton has has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 48 [2022-04-27 22:27:06,029 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:27:06,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:06,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 146 transitions. [2022-04-27 22:27:06,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:06,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 146 transitions. [2022-04-27 22:27:06,031 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 31 states and 146 transitions. [2022-04-27 22:27:06,115 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 146 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:06,124 INFO L225 Difference]: With dead ends: 410 [2022-04-27 22:27:06,124 INFO L226 Difference]: Without dead ends: 396 [2022-04-27 22:27:06,126 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 75 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 793 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=458, Invalid=5394, Unknown=0, NotChecked=0, Total=5852 [2022-04-27 22:27:06,126 INFO L413 NwaCegarLoop]: 84 mSDtfsCounter, 691 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 2507 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 696 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 2588 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 81 IncrementalHoareTripleChecker+Valid, 2507 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-27 22:27:06,126 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [696 Valid, 181 Invalid, 2588 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [81 Valid, 2507 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-27 22:27:06,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 396 states. [2022-04-27 22:27:07,904 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 396 to 387. [2022-04-27 22:27:07,904 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:27:07,904 INFO L82 GeneralOperation]: Start isEquivalent. First operand 396 states. Second operand has 387 states, 327 states have (on average 1.1773700305810397) internal successors, (385), 361 states have internal predecessors, (385), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (42), 20 states have call predecessors, (42), 20 states have call successors, (42) [2022-04-27 22:27:07,904 INFO L74 IsIncluded]: Start isIncluded. First operand 396 states. Second operand has 387 states, 327 states have (on average 1.1773700305810397) internal successors, (385), 361 states have internal predecessors, (385), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (42), 20 states have call predecessors, (42), 20 states have call successors, (42) [2022-04-27 22:27:07,905 INFO L87 Difference]: Start difference. First operand 396 states. Second operand has 387 states, 327 states have (on average 1.1773700305810397) internal successors, (385), 361 states have internal predecessors, (385), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (42), 20 states have call predecessors, (42), 20 states have call successors, (42) [2022-04-27 22:27:07,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:07,912 INFO L93 Difference]: Finished difference Result 396 states and 459 transitions. [2022-04-27 22:27:07,912 INFO L276 IsEmpty]: Start isEmpty. Operand 396 states and 459 transitions. [2022-04-27 22:27:07,913 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:07,913 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:07,914 INFO L74 IsIncluded]: Start isIncluded. First operand has 387 states, 327 states have (on average 1.1773700305810397) internal successors, (385), 361 states have internal predecessors, (385), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (42), 20 states have call predecessors, (42), 20 states have call successors, (42) Second operand 396 states. [2022-04-27 22:27:07,914 INFO L87 Difference]: Start difference. First operand has 387 states, 327 states have (on average 1.1773700305810397) internal successors, (385), 361 states have internal predecessors, (385), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (42), 20 states have call predecessors, (42), 20 states have call successors, (42) Second operand 396 states. [2022-04-27 22:27:07,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:07,922 INFO L93 Difference]: Finished difference Result 396 states and 459 transitions. [2022-04-27 22:27:07,922 INFO L276 IsEmpty]: Start isEmpty. Operand 396 states and 459 transitions. [2022-04-27 22:27:07,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:07,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:07,923 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:27:07,923 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:27:07,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 387 states, 327 states have (on average 1.1773700305810397) internal successors, (385), 361 states have internal predecessors, (385), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (42), 20 states have call predecessors, (42), 20 states have call successors, (42) [2022-04-27 22:27:07,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 387 states to 387 states and 449 transitions. [2022-04-27 22:27:07,932 INFO L78 Accepts]: Start accepts. Automaton has 387 states and 449 transitions. Word has length 48 [2022-04-27 22:27:07,932 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:27:07,932 INFO L495 AbstractCegarLoop]: Abstraction has 387 states and 449 transitions. [2022-04-27 22:27:07,932 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:07,932 INFO L276 IsEmpty]: Start isEmpty. Operand 387 states and 449 transitions. [2022-04-27 22:27:07,933 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 22:27:07,933 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:27:07,933 INFO L195 NwaCegarLoop]: trace histogram [7, 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, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:27:07,951 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-27 22:27:08,151 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable48 [2022-04-27 22:27:08,152 INFO L420 AbstractCegarLoop]: === Iteration 50 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:27:08,152 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:27:08,152 INFO L85 PathProgramCache]: Analyzing trace with hash -1784927875, now seen corresponding path program 40 times [2022-04-27 22:27:08,152 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:27:08,152 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1858968664] [2022-04-27 22:27:08,152 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:27:08,152 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:27:08,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:08,182 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:27:08,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:08,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {54661#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {54622#true} is VALID [2022-04-27 22:27:08,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {54622#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:08,185 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {54622#true} {54622#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:08,185 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:27:08,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:08,305 INFO L290 TraceCheckUtils]: 0: Hoare triple {54622#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,306 INFO L290 TraceCheckUtils]: 1: Hoare triple {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,306 INFO L290 TraceCheckUtils]: 2: Hoare triple {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,306 INFO L290 TraceCheckUtils]: 3: Hoare triple {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54663#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,307 INFO L290 TraceCheckUtils]: 4: Hoare triple {54663#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54664#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {54664#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54665#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,308 INFO L290 TraceCheckUtils]: 6: Hoare triple {54665#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54666#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {54666#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54667#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:27:08,309 INFO L290 TraceCheckUtils]: 8: Hoare triple {54667#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54668#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {54668#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54669#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 6 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:27:08,310 INFO L290 TraceCheckUtils]: 10: Hoare triple {54669#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 6 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,311 INFO L290 TraceCheckUtils]: 11: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,311 INFO L290 TraceCheckUtils]: 12: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,311 INFO L290 TraceCheckUtils]: 13: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,312 INFO L290 TraceCheckUtils]: 14: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,312 INFO L290 TraceCheckUtils]: 15: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,313 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {54622#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} is VALID [2022-04-27 22:27:08,313 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:27:08,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:08,422 INFO L290 TraceCheckUtils]: 0: Hoare triple {54622#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:27:08,422 INFO L290 TraceCheckUtils]: 1: Hoare triple {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:27:08,422 INFO L290 TraceCheckUtils]: 2: Hoare triple {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:27:08,423 INFO L290 TraceCheckUtils]: 3: Hoare triple {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54672#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:27:08,423 INFO L290 TraceCheckUtils]: 4: Hoare triple {54672#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54673#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:27:08,424 INFO L290 TraceCheckUtils]: 5: Hoare triple {54673#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54674#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:27:08,424 INFO L290 TraceCheckUtils]: 6: Hoare triple {54674#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54675#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:27:08,425 INFO L290 TraceCheckUtils]: 7: Hoare triple {54675#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54676#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:27:08,425 INFO L290 TraceCheckUtils]: 8: Hoare triple {54676#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54677#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 6)))} is VALID [2022-04-27 22:27:08,425 INFO L290 TraceCheckUtils]: 9: Hoare triple {54677#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 6)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,425 INFO L290 TraceCheckUtils]: 10: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,426 INFO L290 TraceCheckUtils]: 11: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,426 INFO L290 TraceCheckUtils]: 12: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,426 INFO L290 TraceCheckUtils]: 13: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,426 INFO L290 TraceCheckUtils]: 14: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,427 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {54623#false} is VALID [2022-04-27 22:27:08,427 INFO L272 TraceCheckUtils]: 0: Hoare triple {54622#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54661#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:27:08,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {54661#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {54622#true} is VALID [2022-04-27 22:27:08,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {54622#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:08,427 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54622#true} {54622#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:08,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {54622#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:08,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {54622#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:08,427 INFO L290 TraceCheckUtils]: 6: Hoare triple {54622#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:08,428 INFO L272 TraceCheckUtils]: 7: Hoare triple {54622#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:08,428 INFO L290 TraceCheckUtils]: 8: Hoare triple {54622#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,428 INFO L290 TraceCheckUtils]: 9: Hoare triple {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,439 INFO L290 TraceCheckUtils]: 10: Hoare triple {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,440 INFO L290 TraceCheckUtils]: 11: Hoare triple {54662#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54663#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {54663#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54664#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,441 INFO L290 TraceCheckUtils]: 13: Hoare triple {54664#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54665#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,441 INFO L290 TraceCheckUtils]: 14: Hoare triple {54665#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54666#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,442 INFO L290 TraceCheckUtils]: 15: Hoare triple {54666#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54667#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:27:08,442 INFO L290 TraceCheckUtils]: 16: Hoare triple {54667#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54668#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:08,442 INFO L290 TraceCheckUtils]: 17: Hoare triple {54668#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54669#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 6 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:27:08,443 INFO L290 TraceCheckUtils]: 18: Hoare triple {54669#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 6 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,443 INFO L290 TraceCheckUtils]: 19: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,443 INFO L290 TraceCheckUtils]: 20: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,443 INFO L290 TraceCheckUtils]: 21: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,444 INFO L290 TraceCheckUtils]: 22: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,444 INFO L290 TraceCheckUtils]: 23: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:08,444 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {54622#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} is VALID [2022-04-27 22:27:08,445 INFO L290 TraceCheckUtils]: 25: Hoare triple {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} is VALID [2022-04-27 22:27:08,445 INFO L272 TraceCheckUtils]: 26: Hoare triple {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:08,445 INFO L290 TraceCheckUtils]: 27: Hoare triple {54622#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:27:08,445 INFO L290 TraceCheckUtils]: 28: Hoare triple {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:27:08,446 INFO L290 TraceCheckUtils]: 29: Hoare triple {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:27:08,446 INFO L290 TraceCheckUtils]: 30: Hoare triple {54671#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54672#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:27:08,446 INFO L290 TraceCheckUtils]: 31: Hoare triple {54672#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54673#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:27:08,447 INFO L290 TraceCheckUtils]: 32: Hoare triple {54673#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54674#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:27:08,447 INFO L290 TraceCheckUtils]: 33: Hoare triple {54674#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54675#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:27:08,448 INFO L290 TraceCheckUtils]: 34: Hoare triple {54675#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54676#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:27:08,448 INFO L290 TraceCheckUtils]: 35: Hoare triple {54676#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54677#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 6)))} is VALID [2022-04-27 22:27:08,448 INFO L290 TraceCheckUtils]: 36: Hoare triple {54677#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 6)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,449 INFO L290 TraceCheckUtils]: 37: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,449 INFO L290 TraceCheckUtils]: 38: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,449 INFO L290 TraceCheckUtils]: 39: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,449 INFO L290 TraceCheckUtils]: 40: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,449 INFO L290 TraceCheckUtils]: 41: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:08,450 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {54623#false} is VALID [2022-04-27 22:27:08,450 INFO L290 TraceCheckUtils]: 43: Hoare triple {54623#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {54623#false} is VALID [2022-04-27 22:27:08,450 INFO L272 TraceCheckUtils]: 44: Hoare triple {54623#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {54623#false} is VALID [2022-04-27 22:27:08,450 INFO L290 TraceCheckUtils]: 45: Hoare triple {54623#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {54623#false} is VALID [2022-04-27 22:27:08,450 INFO L290 TraceCheckUtils]: 46: Hoare triple {54623#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {54623#false} is VALID [2022-04-27 22:27:08,450 INFO L290 TraceCheckUtils]: 47: Hoare triple {54623#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54623#false} is VALID [2022-04-27 22:27:08,450 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:27:08,450 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:27:08,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1858968664] [2022-04-27 22:27:08,451 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1858968664] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:27:08,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1545328309] [2022-04-27 22:27:08,451 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:27:08,451 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:08,451 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:27:08,452 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:27:08,456 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-27 22:27:08,516 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:27:08,516 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:27:08,517 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-27 22:27:08,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:08,526 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:27:09,774 INFO L272 TraceCheckUtils]: 0: Hoare triple {54622#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:09,774 INFO L290 TraceCheckUtils]: 1: Hoare triple {54622#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {54622#true} is VALID [2022-04-27 22:27:09,774 INFO L290 TraceCheckUtils]: 2: Hoare triple {54622#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:09,774 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54622#true} {54622#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:09,774 INFO L272 TraceCheckUtils]: 4: Hoare triple {54622#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:09,774 INFO L290 TraceCheckUtils]: 5: Hoare triple {54622#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:09,774 INFO L290 TraceCheckUtils]: 6: Hoare triple {54622#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:09,775 INFO L272 TraceCheckUtils]: 7: Hoare triple {54622#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:09,775 INFO L290 TraceCheckUtils]: 8: Hoare triple {54622#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {54706#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:09,775 INFO L290 TraceCheckUtils]: 9: Hoare triple {54706#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {54706#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:09,776 INFO L290 TraceCheckUtils]: 10: Hoare triple {54706#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {54706#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:09,776 INFO L290 TraceCheckUtils]: 11: Hoare triple {54706#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54716#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:09,777 INFO L290 TraceCheckUtils]: 12: Hoare triple {54716#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54720#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:09,777 INFO L290 TraceCheckUtils]: 13: Hoare triple {54720#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54724#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:09,778 INFO L290 TraceCheckUtils]: 14: Hoare triple {54724#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54728#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:27:09,778 INFO L290 TraceCheckUtils]: 15: Hoare triple {54728#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54732#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:27:09,779 INFO L290 TraceCheckUtils]: 16: Hoare triple {54732#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54736#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 6)))} is VALID [2022-04-27 22:27:09,779 INFO L290 TraceCheckUtils]: 17: Hoare triple {54736#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 6)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:09,780 INFO L290 TraceCheckUtils]: 18: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:09,780 INFO L290 TraceCheckUtils]: 19: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:09,780 INFO L290 TraceCheckUtils]: 20: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:09,780 INFO L290 TraceCheckUtils]: 21: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:09,781 INFO L290 TraceCheckUtils]: 22: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:09,781 INFO L290 TraceCheckUtils]: 23: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:09,781 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {54622#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} is VALID [2022-04-27 22:27:09,782 INFO L290 TraceCheckUtils]: 25: Hoare triple {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} is VALID [2022-04-27 22:27:09,782 INFO L272 TraceCheckUtils]: 26: Hoare triple {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:09,782 INFO L290 TraceCheckUtils]: 27: Hoare triple {54622#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {54770#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:27:09,782 INFO L290 TraceCheckUtils]: 28: Hoare triple {54770#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {54770#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:27:09,783 INFO L290 TraceCheckUtils]: 29: Hoare triple {54770#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {54770#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:27:09,783 INFO L290 TraceCheckUtils]: 30: Hoare triple {54770#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54780#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:27:09,784 INFO L290 TraceCheckUtils]: 31: Hoare triple {54780#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54784#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:27:09,784 INFO L290 TraceCheckUtils]: 32: Hoare triple {54784#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54788#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:27:09,784 INFO L290 TraceCheckUtils]: 33: Hoare triple {54788#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54792#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:27:09,785 INFO L290 TraceCheckUtils]: 34: Hoare triple {54792#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54796#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:27:09,785 INFO L290 TraceCheckUtils]: 35: Hoare triple {54796#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54800#(and (<= (div (- student_version_~l~1) (- 6)) |student_version_#in~a|) (<= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:27:09,786 INFO L290 TraceCheckUtils]: 36: Hoare triple {54800#(and (<= (div (- student_version_~l~1) (- 6)) |student_version_#in~a|) (<= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:09,786 INFO L290 TraceCheckUtils]: 37: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:09,786 INFO L290 TraceCheckUtils]: 38: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:09,786 INFO L290 TraceCheckUtils]: 39: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:09,786 INFO L290 TraceCheckUtils]: 40: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:09,787 INFO L290 TraceCheckUtils]: 41: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:09,787 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {54623#false} is VALID [2022-04-27 22:27:09,787 INFO L290 TraceCheckUtils]: 43: Hoare triple {54623#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {54623#false} is VALID [2022-04-27 22:27:09,787 INFO L272 TraceCheckUtils]: 44: Hoare triple {54623#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {54623#false} is VALID [2022-04-27 22:27:09,787 INFO L290 TraceCheckUtils]: 45: Hoare triple {54623#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {54623#false} is VALID [2022-04-27 22:27:09,787 INFO L290 TraceCheckUtils]: 46: Hoare triple {54623#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {54623#false} is VALID [2022-04-27 22:27:09,787 INFO L290 TraceCheckUtils]: 47: Hoare triple {54623#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54623#false} is VALID [2022-04-27 22:27:09,788 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:27:09,788 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:27:10,906 INFO L290 TraceCheckUtils]: 47: Hoare triple {54623#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54623#false} is VALID [2022-04-27 22:27:10,907 INFO L290 TraceCheckUtils]: 46: Hoare triple {54623#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {54623#false} is VALID [2022-04-27 22:27:10,907 INFO L290 TraceCheckUtils]: 45: Hoare triple {54623#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {54623#false} is VALID [2022-04-27 22:27:10,907 INFO L272 TraceCheckUtils]: 44: Hoare triple {54623#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {54623#false} is VALID [2022-04-27 22:27:10,907 INFO L290 TraceCheckUtils]: 43: Hoare triple {54623#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {54623#false} is VALID [2022-04-27 22:27:10,907 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {54623#false} is VALID [2022-04-27 22:27:10,908 INFO L290 TraceCheckUtils]: 41: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:10,908 INFO L290 TraceCheckUtils]: 40: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:10,908 INFO L290 TraceCheckUtils]: 39: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:10,908 INFO L290 TraceCheckUtils]: 38: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:10,908 INFO L290 TraceCheckUtils]: 37: Hoare triple {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:10,909 INFO L290 TraceCheckUtils]: 36: Hoare triple {54873#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {54678#(<= |student_version_#in~m| (* |student_version_#in~a| 6))} is VALID [2022-04-27 22:27:10,909 INFO L290 TraceCheckUtils]: 35: Hoare triple {54877#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54873#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:27:10,910 INFO L290 TraceCheckUtils]: 34: Hoare triple {54881#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54877#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:27:10,910 INFO L290 TraceCheckUtils]: 33: Hoare triple {54885#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54881#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:27:10,910 INFO L290 TraceCheckUtils]: 32: Hoare triple {54889#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54885#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:27:10,911 INFO L290 TraceCheckUtils]: 31: Hoare triple {54893#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54889#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:27:10,911 INFO L290 TraceCheckUtils]: 30: Hoare triple {54897#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {54893#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:27:10,912 INFO L290 TraceCheckUtils]: 29: Hoare triple {54897#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {54897#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:27:10,912 INFO L290 TraceCheckUtils]: 28: Hoare triple {54897#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {54897#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:27:10,912 INFO L290 TraceCheckUtils]: 27: Hoare triple {54622#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {54897#(or (<= |student_version_#in~m| (* |student_version_#in~a| 6)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:27:10,912 INFO L272 TraceCheckUtils]: 26: Hoare triple {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:10,912 INFO L290 TraceCheckUtils]: 25: Hoare triple {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} is VALID [2022-04-27 22:27:10,913 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {54622#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {54644#(<= (+ (* main_~a~0 6) 1) main_~m~0)} is VALID [2022-04-27 22:27:10,913 INFO L290 TraceCheckUtils]: 23: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:10,913 INFO L290 TraceCheckUtils]: 22: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:10,913 INFO L290 TraceCheckUtils]: 21: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:10,914 INFO L290 TraceCheckUtils]: 20: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:10,914 INFO L290 TraceCheckUtils]: 19: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:10,914 INFO L290 TraceCheckUtils]: 18: Hoare triple {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:10,914 INFO L290 TraceCheckUtils]: 17: Hoare triple {54937#(or (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54670#(<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:27:10,915 INFO L290 TraceCheckUtils]: 16: Hoare triple {54941#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54937#(or (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:27:10,915 INFO L290 TraceCheckUtils]: 15: Hoare triple {54945#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54941#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:27:10,916 INFO L290 TraceCheckUtils]: 14: Hoare triple {54949#(or (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54945#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:27:10,916 INFO L290 TraceCheckUtils]: 13: Hoare triple {54953#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54949#(or (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} is VALID [2022-04-27 22:27:10,917 INFO L290 TraceCheckUtils]: 12: Hoare triple {54957#(or (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54953#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:27:10,917 INFO L290 TraceCheckUtils]: 11: Hoare triple {54961#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {54957#(or (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:27:10,917 INFO L290 TraceCheckUtils]: 10: Hoare triple {54961#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {54961#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:27:10,918 INFO L290 TraceCheckUtils]: 9: Hoare triple {54961#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {54961#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:27:10,918 INFO L290 TraceCheckUtils]: 8: Hoare triple {54622#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {54961#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 6 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:27:10,918 INFO L272 TraceCheckUtils]: 7: Hoare triple {54622#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:10,918 INFO L290 TraceCheckUtils]: 6: Hoare triple {54622#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:10,931 INFO L290 TraceCheckUtils]: 5: Hoare triple {54622#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {54622#true} is VALID [2022-04-27 22:27:10,931 INFO L272 TraceCheckUtils]: 4: Hoare triple {54622#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:10,931 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54622#true} {54622#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:10,931 INFO L290 TraceCheckUtils]: 2: Hoare triple {54622#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:10,931 INFO L290 TraceCheckUtils]: 1: Hoare triple {54622#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {54622#true} is VALID [2022-04-27 22:27:10,931 INFO L272 TraceCheckUtils]: 0: Hoare triple {54622#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54622#true} is VALID [2022-04-27 22:27:10,931 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 7 proven. 42 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:27:10,932 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1545328309] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:27:10,932 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:27:10,932 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 19, 19] total 49 [2022-04-27 22:27:10,932 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1111346710] [2022-04-27 22:27:10,932 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:27:10,938 INFO L78 Accepts]: Start accepts. Automaton has has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 48 [2022-04-27 22:27:10,938 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:27:10,938 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:10,998 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-27 22:27:10,998 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 49 states [2022-04-27 22:27:10,998 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:27:10,998 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 49 interpolants. [2022-04-27 22:27:11,005 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=159, Invalid=2193, Unknown=0, NotChecked=0, Total=2352 [2022-04-27 22:27:11,005 INFO L87 Difference]: Start difference. First operand 387 states and 449 transitions. Second operand has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:17,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:17,007 INFO L93 Difference]: Finished difference Result 402 states and 464 transitions. [2022-04-27 22:27:17,007 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-04-27 22:27:17,007 INFO L78 Accepts]: Start accepts. Automaton has has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 48 [2022-04-27 22:27:17,007 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:27:17,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:17,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 145 transitions. [2022-04-27 22:27:17,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:17,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 145 transitions. [2022-04-27 22:27:17,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 31 states and 145 transitions. [2022-04-27 22:27:17,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:17,117 INFO L225 Difference]: With dead ends: 402 [2022-04-27 22:27:17,118 INFO L226 Difference]: Without dead ends: 390 [2022-04-27 22:27:17,119 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 75 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 803 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=458, Invalid=5394, Unknown=0, NotChecked=0, Total=5852 [2022-04-27 22:27:17,120 INFO L413 NwaCegarLoop]: 86 mSDtfsCounter, 654 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 2985 mSolverCounterSat, 70 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 667 SdHoareTripleChecker+Valid, 218 SdHoareTripleChecker+Invalid, 3055 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 70 IncrementalHoareTripleChecker+Valid, 2985 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-27 22:27:17,123 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [667 Valid, 218 Invalid, 3055 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [70 Valid, 2985 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-27 22:27:17,123 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-04-27 22:27:18,543 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 388. [2022-04-27 22:27:18,543 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:27:18,559 INFO L82 GeneralOperation]: Start isEquivalent. First operand 390 states. Second operand has 388 states, 328 states have (on average 1.1768292682926829) internal successors, (386), 362 states have internal predecessors, (386), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:27:18,559 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand has 388 states, 328 states have (on average 1.1768292682926829) internal successors, (386), 362 states have internal predecessors, (386), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:27:18,560 INFO L87 Difference]: Start difference. First operand 390 states. Second operand has 388 states, 328 states have (on average 1.1768292682926829) internal successors, (386), 362 states have internal predecessors, (386), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:27:18,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:18,567 INFO L93 Difference]: Finished difference Result 390 states and 449 transitions. [2022-04-27 22:27:18,567 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 449 transitions. [2022-04-27 22:27:18,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:18,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:18,581 INFO L74 IsIncluded]: Start isIncluded. First operand has 388 states, 328 states have (on average 1.1768292682926829) internal successors, (386), 362 states have internal predecessors, (386), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) Second operand 390 states. [2022-04-27 22:27:18,581 INFO L87 Difference]: Start difference. First operand has 388 states, 328 states have (on average 1.1768292682926829) internal successors, (386), 362 states have internal predecessors, (386), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) Second operand 390 states. [2022-04-27 22:27:18,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:18,588 INFO L93 Difference]: Finished difference Result 390 states and 449 transitions. [2022-04-27 22:27:18,588 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 449 transitions. [2022-04-27 22:27:18,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:18,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:18,589 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:27:18,590 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:27:18,590 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 388 states, 328 states have (on average 1.1768292682926829) internal successors, (386), 362 states have internal predecessors, (386), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:27:18,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 388 states to 388 states and 447 transitions. [2022-04-27 22:27:18,613 INFO L78 Accepts]: Start accepts. Automaton has 388 states and 447 transitions. Word has length 48 [2022-04-27 22:27:18,613 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:27:18,613 INFO L495 AbstractCegarLoop]: Abstraction has 388 states and 447 transitions. [2022-04-27 22:27:18,614 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 49 states, 49 states have (on average 1.6734693877551021) internal successors, (82), 48 states have internal predecessors, (82), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:27:18,614 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 447 transitions. [2022-04-27 22:27:18,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 22:27:18,615 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:27:18,615 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 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, 1] [2022-04-27 22:27:18,640 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-27 22:27:18,831 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable49 [2022-04-27 22:27:18,831 INFO L420 AbstractCegarLoop]: === Iteration 51 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:27:18,832 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:27:18,832 INFO L85 PathProgramCache]: Analyzing trace with hash 319517281, now seen corresponding path program 41 times [2022-04-27 22:27:18,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:27:18,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1390196137] [2022-04-27 22:27:18,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:27:18,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:27:18,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:18,853 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:27:18,854 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:18,856 INFO L290 TraceCheckUtils]: 0: Hoare triple {56981#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {56943#true} is VALID [2022-04-27 22:27:18,856 INFO L290 TraceCheckUtils]: 1: Hoare triple {56943#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,856 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {56943#true} {56943#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,856 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:27:18,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:18,928 INFO L290 TraceCheckUtils]: 0: Hoare triple {56943#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {56982#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,929 INFO L290 TraceCheckUtils]: 1: Hoare triple {56982#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56983#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,929 INFO L290 TraceCheckUtils]: 2: Hoare triple {56983#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56984#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,930 INFO L290 TraceCheckUtils]: 3: Hoare triple {56984#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56985#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,930 INFO L290 TraceCheckUtils]: 4: Hoare triple {56985#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,931 INFO L290 TraceCheckUtils]: 5: Hoare triple {56986#(<= 4 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,931 INFO L290 TraceCheckUtils]: 6: Hoare triple {56986#(<= 4 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,931 INFO L290 TraceCheckUtils]: 7: Hoare triple {56986#(<= 4 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,931 INFO L290 TraceCheckUtils]: 8: Hoare triple {56986#(<= 4 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56987#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,932 INFO L290 TraceCheckUtils]: 9: Hoare triple {56987#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56988#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,932 INFO L290 TraceCheckUtils]: 10: Hoare triple {56988#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56989#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,933 INFO L290 TraceCheckUtils]: 11: Hoare triple {56989#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56990#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,933 INFO L290 TraceCheckUtils]: 12: Hoare triple {56990#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:18,933 INFO L290 TraceCheckUtils]: 13: Hoare triple {56944#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {56944#false} is VALID [2022-04-27 22:27:18,933 INFO L290 TraceCheckUtils]: 14: Hoare triple {56944#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:18,933 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {56944#false} {56943#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:18,934 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-04-27 22:27:18,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 0: Hoare triple {56943#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 2: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 3: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 4: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 5: Hoare triple {56943#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 6: Hoare triple {56943#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 7: Hoare triple {56943#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 8: Hoare triple {56943#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 9: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 10: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,941 INFO L290 TraceCheckUtils]: 11: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,942 INFO L290 TraceCheckUtils]: 12: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,942 INFO L290 TraceCheckUtils]: 13: Hoare triple {56943#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,942 INFO L290 TraceCheckUtils]: 14: Hoare triple {56943#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {56943#true} is VALID [2022-04-27 22:27:18,942 INFO L290 TraceCheckUtils]: 15: Hoare triple {56943#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,942 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {56943#true} {56944#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:18,942 INFO L272 TraceCheckUtils]: 0: Hoare triple {56943#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56981#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:27:18,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {56981#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {56943#true} is VALID [2022-04-27 22:27:18,943 INFO L290 TraceCheckUtils]: 2: Hoare triple {56943#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,943 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56943#true} {56943#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,943 INFO L272 TraceCheckUtils]: 4: Hoare triple {56943#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,943 INFO L290 TraceCheckUtils]: 5: Hoare triple {56943#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:18,943 INFO L290 TraceCheckUtils]: 6: Hoare triple {56943#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,943 INFO L272 TraceCheckUtils]: 7: Hoare triple {56943#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:18,943 INFO L290 TraceCheckUtils]: 8: Hoare triple {56943#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {56982#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,944 INFO L290 TraceCheckUtils]: 9: Hoare triple {56982#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56983#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,944 INFO L290 TraceCheckUtils]: 10: Hoare triple {56983#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56984#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,945 INFO L290 TraceCheckUtils]: 11: Hoare triple {56984#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56985#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,945 INFO L290 TraceCheckUtils]: 12: Hoare triple {56985#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,946 INFO L290 TraceCheckUtils]: 13: Hoare triple {56986#(<= 4 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,946 INFO L290 TraceCheckUtils]: 14: Hoare triple {56986#(<= 4 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,946 INFO L290 TraceCheckUtils]: 15: Hoare triple {56986#(<= 4 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:18,947 INFO L290 TraceCheckUtils]: 16: Hoare triple {56986#(<= 4 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56987#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,947 INFO L290 TraceCheckUtils]: 17: Hoare triple {56987#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56988#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,948 INFO L290 TraceCheckUtils]: 18: Hoare triple {56988#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56989#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,948 INFO L290 TraceCheckUtils]: 19: Hoare triple {56989#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56990#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 20: Hoare triple {56990#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {56944#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {56944#false} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {56944#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:18,949 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {56944#false} {56943#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 24: Hoare triple {56944#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {56944#false} is VALID [2022-04-27 22:27:18,949 INFO L272 TraceCheckUtils]: 25: Hoare triple {56944#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 26: Hoare triple {56943#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {56943#true} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 27: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 28: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 29: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 30: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:18,949 INFO L290 TraceCheckUtils]: 31: Hoare triple {56943#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 32: Hoare triple {56943#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 33: Hoare triple {56943#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 34: Hoare triple {56943#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 35: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 36: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 37: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 38: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 39: Hoare triple {56943#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 40: Hoare triple {56943#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 41: Hoare triple {56943#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:18,950 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {56943#true} {56944#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 43: Hoare triple {56944#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {56944#false} is VALID [2022-04-27 22:27:18,950 INFO L272 TraceCheckUtils]: 44: Hoare triple {56944#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {56944#false} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 45: Hoare triple {56944#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {56944#false} is VALID [2022-04-27 22:27:18,950 INFO L290 TraceCheckUtils]: 46: Hoare triple {56944#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:18,951 INFO L290 TraceCheckUtils]: 47: Hoare triple {56944#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:18,951 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:27:18,951 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:27:18,951 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1390196137] [2022-04-27 22:27:18,951 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1390196137] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:27:18,951 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [826508227] [2022-04-27 22:27:18,951 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:27:18,951 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:18,951 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:27:18,952 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:27:18,953 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-27 22:27:19,043 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2022-04-27 22:27:19,043 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:27:19,044 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 22:27:19,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:19,054 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:27:19,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {56943#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {56943#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {56943#true} is VALID [2022-04-27 22:27:19,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {56943#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,216 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56943#true} {56943#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,216 INFO L272 TraceCheckUtils]: 4: Hoare triple {56943#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,216 INFO L290 TraceCheckUtils]: 5: Hoare triple {56943#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:19,216 INFO L290 TraceCheckUtils]: 6: Hoare triple {56943#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,216 INFO L272 TraceCheckUtils]: 7: Hoare triple {56943#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:19,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {56943#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {56982#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,217 INFO L290 TraceCheckUtils]: 9: Hoare triple {56982#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56983#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,218 INFO L290 TraceCheckUtils]: 10: Hoare triple {56983#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56984#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,218 INFO L290 TraceCheckUtils]: 11: Hoare triple {56984#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56985#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {56985#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,219 INFO L290 TraceCheckUtils]: 13: Hoare triple {56986#(<= 4 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,219 INFO L290 TraceCheckUtils]: 14: Hoare triple {56986#(<= 4 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,219 INFO L290 TraceCheckUtils]: 15: Hoare triple {56986#(<= 4 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,219 INFO L290 TraceCheckUtils]: 16: Hoare triple {56986#(<= 4 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {57042#(and (<= 4 correct_version_~i~0) (<= correct_version_~x~0 0))} is VALID [2022-04-27 22:27:19,220 INFO L290 TraceCheckUtils]: 17: Hoare triple {57042#(and (<= 4 correct_version_~i~0) (<= correct_version_~x~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {57046#(and (<= 4 correct_version_~i~0) (<= correct_version_~x~0 1))} is VALID [2022-04-27 22:27:19,220 INFO L290 TraceCheckUtils]: 18: Hoare triple {57046#(and (<= 4 correct_version_~i~0) (<= correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {57050#(and (<= correct_version_~x~0 2) (<= 4 correct_version_~i~0))} is VALID [2022-04-27 22:27:19,221 INFO L290 TraceCheckUtils]: 19: Hoare triple {57050#(and (<= correct_version_~x~0 2) (<= 4 correct_version_~i~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {57054#(and (<= correct_version_~x~0 3) (<= 4 correct_version_~i~0))} is VALID [2022-04-27 22:27:19,221 INFO L290 TraceCheckUtils]: 20: Hoare triple {57054#(and (<= correct_version_~x~0 3) (<= 4 correct_version_~i~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,221 INFO L290 TraceCheckUtils]: 21: Hoare triple {56944#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {56944#false} is VALID [2022-04-27 22:27:19,221 INFO L290 TraceCheckUtils]: 22: Hoare triple {56944#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,221 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {56944#false} {56943#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:19,221 INFO L290 TraceCheckUtils]: 24: Hoare triple {56944#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {56944#false} is VALID [2022-04-27 22:27:19,221 INFO L272 TraceCheckUtils]: 25: Hoare triple {56944#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:19,221 INFO L290 TraceCheckUtils]: 26: Hoare triple {56944#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {56944#false} is VALID [2022-04-27 22:27:19,221 INFO L290 TraceCheckUtils]: 27: Hoare triple {56944#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 28: Hoare triple {56944#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 29: Hoare triple {56944#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 30: Hoare triple {56944#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 31: Hoare triple {56944#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 32: Hoare triple {56944#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 33: Hoare triple {56944#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 34: Hoare triple {56944#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 35: Hoare triple {56944#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 36: Hoare triple {56944#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 37: Hoare triple {56944#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 38: Hoare triple {56944#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 39: Hoare triple {56944#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 40: Hoare triple {56944#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L290 TraceCheckUtils]: 41: Hoare triple {56944#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,222 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {56944#false} {56944#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:19,223 INFO L290 TraceCheckUtils]: 43: Hoare triple {56944#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {56944#false} is VALID [2022-04-27 22:27:19,223 INFO L272 TraceCheckUtils]: 44: Hoare triple {56944#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {56944#false} is VALID [2022-04-27 22:27:19,223 INFO L290 TraceCheckUtils]: 45: Hoare triple {56944#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {56944#false} is VALID [2022-04-27 22:27:19,223 INFO L290 TraceCheckUtils]: 46: Hoare triple {56944#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,243 INFO L290 TraceCheckUtils]: 47: Hoare triple {56944#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,243 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:27:19,243 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:27:19,373 INFO L290 TraceCheckUtils]: 47: Hoare triple {56944#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,373 INFO L290 TraceCheckUtils]: 46: Hoare triple {56944#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,373 INFO L290 TraceCheckUtils]: 45: Hoare triple {56944#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {56944#false} is VALID [2022-04-27 22:27:19,374 INFO L272 TraceCheckUtils]: 44: Hoare triple {56944#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {56944#false} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 43: Hoare triple {56944#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {56944#false} is VALID [2022-04-27 22:27:19,374 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {56943#true} {56944#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 41: Hoare triple {56943#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 40: Hoare triple {56943#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 39: Hoare triple {56943#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 38: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 37: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 36: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 35: Hoare triple {56943#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 34: Hoare triple {56943#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 33: Hoare triple {56943#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 32: Hoare triple {56943#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {56943#true} is VALID [2022-04-27 22:27:19,374 INFO L290 TraceCheckUtils]: 31: Hoare triple {56943#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 30: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 29: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 28: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 27: Hoare triple {56943#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {56943#true} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 26: Hoare triple {56943#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {56943#true} is VALID [2022-04-27 22:27:19,375 INFO L272 TraceCheckUtils]: 25: Hoare triple {56944#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 24: Hoare triple {56944#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {56944#false} is VALID [2022-04-27 22:27:19,375 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {56944#false} {56943#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {56944#false} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 22: Hoare triple {56944#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,375 INFO L290 TraceCheckUtils]: 21: Hoare triple {56944#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {56944#false} is VALID [2022-04-27 22:27:19,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {56990#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {56944#false} is VALID [2022-04-27 22:27:19,376 INFO L290 TraceCheckUtils]: 19: Hoare triple {56989#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56990#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:27:19,376 INFO L290 TraceCheckUtils]: 18: Hoare triple {56988#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56989#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:27:19,377 INFO L290 TraceCheckUtils]: 17: Hoare triple {56987#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56988#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:27:19,377 INFO L290 TraceCheckUtils]: 16: Hoare triple {56986#(<= 4 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {56987#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:27:19,377 INFO L290 TraceCheckUtils]: 15: Hoare triple {56986#(<= 4 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,378 INFO L290 TraceCheckUtils]: 14: Hoare triple {56986#(<= 4 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,378 INFO L290 TraceCheckUtils]: 13: Hoare triple {56986#(<= 4 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,378 INFO L290 TraceCheckUtils]: 12: Hoare triple {56985#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56986#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,378 INFO L290 TraceCheckUtils]: 11: Hoare triple {56984#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56985#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,379 INFO L290 TraceCheckUtils]: 10: Hoare triple {56983#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56984#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,379 INFO L290 TraceCheckUtils]: 9: Hoare triple {56982#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {56983#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,380 INFO L290 TraceCheckUtils]: 8: Hoare triple {56943#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {56982#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:27:19,380 INFO L272 TraceCheckUtils]: 7: Hoare triple {56943#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L290 TraceCheckUtils]: 6: Hoare triple {56943#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {56943#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {56943#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56943#true} {56943#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L290 TraceCheckUtils]: 2: Hoare triple {56943#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L290 TraceCheckUtils]: 1: Hoare triple {56943#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L272 TraceCheckUtils]: 0: Hoare triple {56943#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56943#true} is VALID [2022-04-27 22:27:19,380 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:27:19,380 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [826508227] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:27:19,380 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:27:19,381 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11, 11] total 16 [2022-04-27 22:27:19,381 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1927215218] [2022-04-27 22:27:19,381 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:27:19,381 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 3.125) internal successors, (50), 15 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 48 [2022-04-27 22:27:19,381 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:27:19,381 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 3.125) internal successors, (50), 15 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:19,413 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:19,413 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-27 22:27:19,413 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:27:19,413 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-27 22:27:19,413 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=159, Unknown=0, NotChecked=0, Total=240 [2022-04-27 22:27:19,413 INFO L87 Difference]: Start difference. First operand 388 states and 447 transitions. Second operand has 16 states, 16 states have (on average 3.125) internal successors, (50), 15 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:21,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:21,579 INFO L93 Difference]: Finished difference Result 593 states and 672 transitions. [2022-04-27 22:27:21,579 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-27 22:27:21,579 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 3.125) internal successors, (50), 15 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 48 [2022-04-27 22:27:21,579 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:27:21,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 3.125) internal successors, (50), 15 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:21,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 97 transitions. [2022-04-27 22:27:21,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 3.125) internal successors, (50), 15 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:21,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 97 transitions. [2022-04-27 22:27:21,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 97 transitions. [2022-04-27 22:27:21,664 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:21,673 INFO L225 Difference]: With dead ends: 593 [2022-04-27 22:27:21,673 INFO L226 Difference]: Without dead ends: 383 [2022-04-27 22:27:21,676 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 97 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 167 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=301, Invalid=629, Unknown=0, NotChecked=0, Total=930 [2022-04-27 22:27:21,676 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 69 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 262 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 71 SdHoareTripleChecker+Invalid, 291 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 262 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:27:21,676 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 71 Invalid, 291 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 262 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:27:21,677 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 383 states. [2022-04-27 22:27:23,917 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 383 to 375. [2022-04-27 22:27:23,917 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:27:23,918 INFO L82 GeneralOperation]: Start isEquivalent. First operand 383 states. Second operand has 375 states, 321 states have (on average 1.1682242990654206) internal successors, (375), 351 states have internal predecessors, (375), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:23,918 INFO L74 IsIncluded]: Start isIncluded. First operand 383 states. Second operand has 375 states, 321 states have (on average 1.1682242990654206) internal successors, (375), 351 states have internal predecessors, (375), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:23,918 INFO L87 Difference]: Start difference. First operand 383 states. Second operand has 375 states, 321 states have (on average 1.1682242990654206) internal successors, (375), 351 states have internal predecessors, (375), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:23,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:23,924 INFO L93 Difference]: Finished difference Result 383 states and 438 transitions. [2022-04-27 22:27:23,924 INFO L276 IsEmpty]: Start isEmpty. Operand 383 states and 438 transitions. [2022-04-27 22:27:23,925 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:23,925 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:23,926 INFO L74 IsIncluded]: Start isIncluded. First operand has 375 states, 321 states have (on average 1.1682242990654206) internal successors, (375), 351 states have internal predecessors, (375), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) Second operand 383 states. [2022-04-27 22:27:23,926 INFO L87 Difference]: Start difference. First operand has 375 states, 321 states have (on average 1.1682242990654206) internal successors, (375), 351 states have internal predecessors, (375), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) Second operand 383 states. [2022-04-27 22:27:23,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:23,944 INFO L93 Difference]: Finished difference Result 383 states and 438 transitions. [2022-04-27 22:27:23,944 INFO L276 IsEmpty]: Start isEmpty. Operand 383 states and 438 transitions. [2022-04-27 22:27:23,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:23,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:23,945 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:27:23,945 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:27:23,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 375 states, 321 states have (on average 1.1682242990654206) internal successors, (375), 351 states have internal predecessors, (375), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:23,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 375 states to 375 states and 428 transitions. [2022-04-27 22:27:23,952 INFO L78 Accepts]: Start accepts. Automaton has 375 states and 428 transitions. Word has length 48 [2022-04-27 22:27:23,952 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:27:23,952 INFO L495 AbstractCegarLoop]: Abstraction has 375 states and 428 transitions. [2022-04-27 22:27:23,952 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 3.125) internal successors, (50), 15 states have internal predecessors, (50), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:23,952 INFO L276 IsEmpty]: Start isEmpty. Operand 375 states and 428 transitions. [2022-04-27 22:27:23,954 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2022-04-27 22:27:23,954 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:27:23,954 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 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, 1] [2022-04-27 22:27:23,972 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-27 22:27:24,157 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable50,42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:24,157 INFO L420 AbstractCegarLoop]: === Iteration 52 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:27:24,157 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:27:24,157 INFO L85 PathProgramCache]: Analyzing trace with hash -392786666, now seen corresponding path program 42 times [2022-04-27 22:27:24,158 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:27:24,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1519020491] [2022-04-27 22:27:24,158 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:27:24,158 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:27:24,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:24,207 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:27:24,208 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:24,213 INFO L290 TraceCheckUtils]: 0: Hoare triple {59482#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {59444#true} is VALID [2022-04-27 22:27:24,213 INFO L290 TraceCheckUtils]: 1: Hoare triple {59444#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,213 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {59444#true} {59444#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,213 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:27:24,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:24,217 INFO L290 TraceCheckUtils]: 0: Hoare triple {59444#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 3: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 4: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {59444#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 6: Hoare triple {59444#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 7: Hoare triple {59444#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 8: Hoare triple {59444#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 9: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 10: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 11: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {59444#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 14: Hoare triple {59444#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L290 TraceCheckUtils]: 15: Hoare triple {59444#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,218 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {59444#true} {59444#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,219 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:27:24,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:24,264 INFO L290 TraceCheckUtils]: 0: Hoare triple {59444#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {59483#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:27:24,264 INFO L290 TraceCheckUtils]: 1: Hoare triple {59483#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59484#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:27:24,265 INFO L290 TraceCheckUtils]: 2: Hoare triple {59484#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59485#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:27:24,265 INFO L290 TraceCheckUtils]: 3: Hoare triple {59485#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59486#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:27:24,265 INFO L290 TraceCheckUtils]: 4: Hoare triple {59486#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {59487#(<= 4 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,266 INFO L290 TraceCheckUtils]: 6: Hoare triple {59487#(<= 4 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {59487#(<= 4 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,266 INFO L290 TraceCheckUtils]: 8: Hoare triple {59487#(<= 4 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59488#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:27:24,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {59488#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59489#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,267 INFO L290 TraceCheckUtils]: 10: Hoare triple {59489#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59490#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,267 INFO L290 TraceCheckUtils]: 11: Hoare triple {59490#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59491#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,268 INFO L290 TraceCheckUtils]: 12: Hoare triple {59491#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,268 INFO L290 TraceCheckUtils]: 13: Hoare triple {59445#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {59445#false} is VALID [2022-04-27 22:27:24,268 INFO L290 TraceCheckUtils]: 14: Hoare triple {59445#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,268 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59445#false} {59444#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {59445#false} is VALID [2022-04-27 22:27:24,270 INFO L272 TraceCheckUtils]: 0: Hoare triple {59444#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59482#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:27:24,270 INFO L290 TraceCheckUtils]: 1: Hoare triple {59482#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {59444#true} is VALID [2022-04-27 22:27:24,270 INFO L290 TraceCheckUtils]: 2: Hoare triple {59444#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,270 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59444#true} {59444#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,270 INFO L272 TraceCheckUtils]: 4: Hoare triple {59444#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 5: Hoare triple {59444#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 6: Hoare triple {59444#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L272 TraceCheckUtils]: 7: Hoare triple {59444#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 8: Hoare triple {59444#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 9: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 10: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 11: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 12: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 13: Hoare triple {59444#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {59444#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 15: Hoare triple {59444#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 16: Hoare triple {59444#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 17: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,271 INFO L290 TraceCheckUtils]: 18: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L290 TraceCheckUtils]: 19: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L290 TraceCheckUtils]: 20: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L290 TraceCheckUtils]: 21: Hoare triple {59444#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L290 TraceCheckUtils]: 22: Hoare triple {59444#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L290 TraceCheckUtils]: 23: Hoare triple {59444#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {59444#true} {59444#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L290 TraceCheckUtils]: 25: Hoare triple {59444#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {59444#true} is VALID [2022-04-27 22:27:24,272 INFO L272 TraceCheckUtils]: 26: Hoare triple {59444#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,275 INFO L290 TraceCheckUtils]: 27: Hoare triple {59444#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {59483#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:27:24,275 INFO L290 TraceCheckUtils]: 28: Hoare triple {59483#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59484#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:27:24,276 INFO L290 TraceCheckUtils]: 29: Hoare triple {59484#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59485#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:27:24,276 INFO L290 TraceCheckUtils]: 30: Hoare triple {59485#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59486#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:27:24,276 INFO L290 TraceCheckUtils]: 31: Hoare triple {59486#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,276 INFO L290 TraceCheckUtils]: 32: Hoare triple {59487#(<= 4 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,277 INFO L290 TraceCheckUtils]: 33: Hoare triple {59487#(<= 4 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,277 INFO L290 TraceCheckUtils]: 34: Hoare triple {59487#(<= 4 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,277 INFO L290 TraceCheckUtils]: 35: Hoare triple {59487#(<= 4 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59488#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:27:24,277 INFO L290 TraceCheckUtils]: 36: Hoare triple {59488#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59489#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,278 INFO L290 TraceCheckUtils]: 37: Hoare triple {59489#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59490#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,278 INFO L290 TraceCheckUtils]: 38: Hoare triple {59490#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59491#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,278 INFO L290 TraceCheckUtils]: 39: Hoare triple {59491#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,278 INFO L290 TraceCheckUtils]: 40: Hoare triple {59445#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {59445#false} is VALID [2022-04-27 22:27:24,278 INFO L290 TraceCheckUtils]: 41: Hoare triple {59445#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,279 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {59445#false} {59444#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {59445#false} is VALID [2022-04-27 22:27:24,279 INFO L290 TraceCheckUtils]: 43: Hoare triple {59445#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {59445#false} is VALID [2022-04-27 22:27:24,279 INFO L272 TraceCheckUtils]: 44: Hoare triple {59445#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {59445#false} is VALID [2022-04-27 22:27:24,279 INFO L290 TraceCheckUtils]: 45: Hoare triple {59445#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {59445#false} is VALID [2022-04-27 22:27:24,279 INFO L290 TraceCheckUtils]: 46: Hoare triple {59445#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,279 INFO L290 TraceCheckUtils]: 47: Hoare triple {59445#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,279 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:27:24,279 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:27:24,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1519020491] [2022-04-27 22:27:24,279 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1519020491] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:27:24,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1290534698] [2022-04-27 22:27:24,279 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:27:24,279 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:24,280 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:27:24,280 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:27:24,281 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-27 22:27:24,358 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 3 check-sat command(s) [2022-04-27 22:27:24,358 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:27:24,359 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 22:27:24,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:24,365 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:27:24,499 INFO L272 TraceCheckUtils]: 0: Hoare triple {59444#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,499 INFO L290 TraceCheckUtils]: 1: Hoare triple {59444#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {59444#true} is VALID [2022-04-27 22:27:24,499 INFO L290 TraceCheckUtils]: 2: Hoare triple {59444#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,499 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59444#true} {59444#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,499 INFO L272 TraceCheckUtils]: 4: Hoare triple {59444#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 5: Hoare triple {59444#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 6: Hoare triple {59444#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L272 TraceCheckUtils]: 7: Hoare triple {59444#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 8: Hoare triple {59444#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 9: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 10: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 11: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 12: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 13: Hoare triple {59444#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,500 INFO L290 TraceCheckUtils]: 14: Hoare triple {59444#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,508 INFO L290 TraceCheckUtils]: 15: Hoare triple {59444#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,517 INFO L290 TraceCheckUtils]: 16: Hoare triple {59444#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,517 INFO L290 TraceCheckUtils]: 17: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,517 INFO L290 TraceCheckUtils]: 18: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,517 INFO L290 TraceCheckUtils]: 19: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,517 INFO L290 TraceCheckUtils]: 20: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,517 INFO L290 TraceCheckUtils]: 21: Hoare triple {59444#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,518 INFO L290 TraceCheckUtils]: 22: Hoare triple {59444#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {59444#true} is VALID [2022-04-27 22:27:24,518 INFO L290 TraceCheckUtils]: 23: Hoare triple {59444#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,518 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {59444#true} {59444#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,518 INFO L290 TraceCheckUtils]: 25: Hoare triple {59444#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {59444#true} is VALID [2022-04-27 22:27:24,518 INFO L272 TraceCheckUtils]: 26: Hoare triple {59444#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,518 INFO L290 TraceCheckUtils]: 27: Hoare triple {59444#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {59483#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:27:24,519 INFO L290 TraceCheckUtils]: 28: Hoare triple {59483#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59484#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:27:24,519 INFO L290 TraceCheckUtils]: 29: Hoare triple {59484#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59485#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:27:24,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {59485#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59486#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:27:24,520 INFO L290 TraceCheckUtils]: 31: Hoare triple {59486#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,520 INFO L290 TraceCheckUtils]: 32: Hoare triple {59487#(<= 4 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,520 INFO L290 TraceCheckUtils]: 33: Hoare triple {59487#(<= 4 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,520 INFO L290 TraceCheckUtils]: 34: Hoare triple {59487#(<= 4 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,521 INFO L290 TraceCheckUtils]: 35: Hoare triple {59487#(<= 4 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59600#(and (<= student_version_~x~1 0) (<= 4 student_version_~i~1))} is VALID [2022-04-27 22:27:24,521 INFO L290 TraceCheckUtils]: 36: Hoare triple {59600#(and (<= student_version_~x~1 0) (<= 4 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59604#(and (<= student_version_~x~1 1) (<= 4 student_version_~i~1))} is VALID [2022-04-27 22:27:24,521 INFO L290 TraceCheckUtils]: 37: Hoare triple {59604#(and (<= student_version_~x~1 1) (<= 4 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59608#(and (<= student_version_~x~1 2) (<= 4 student_version_~i~1))} is VALID [2022-04-27 22:27:24,522 INFO L290 TraceCheckUtils]: 38: Hoare triple {59608#(and (<= student_version_~x~1 2) (<= 4 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59612#(and (<= student_version_~x~1 3) (<= 4 student_version_~i~1))} is VALID [2022-04-27 22:27:24,522 INFO L290 TraceCheckUtils]: 39: Hoare triple {59612#(and (<= student_version_~x~1 3) (<= 4 student_version_~i~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,522 INFO L290 TraceCheckUtils]: 40: Hoare triple {59445#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {59445#false} is VALID [2022-04-27 22:27:24,522 INFO L290 TraceCheckUtils]: 41: Hoare triple {59445#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,522 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {59445#false} {59444#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {59445#false} is VALID [2022-04-27 22:27:24,522 INFO L290 TraceCheckUtils]: 43: Hoare triple {59445#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {59445#false} is VALID [2022-04-27 22:27:24,522 INFO L272 TraceCheckUtils]: 44: Hoare triple {59445#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {59445#false} is VALID [2022-04-27 22:27:24,523 INFO L290 TraceCheckUtils]: 45: Hoare triple {59445#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {59445#false} is VALID [2022-04-27 22:27:24,523 INFO L290 TraceCheckUtils]: 46: Hoare triple {59445#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,523 INFO L290 TraceCheckUtils]: 47: Hoare triple {59445#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,523 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:27:24,523 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:27:24,616 INFO L290 TraceCheckUtils]: 47: Hoare triple {59445#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,616 INFO L290 TraceCheckUtils]: 46: Hoare triple {59445#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,616 INFO L290 TraceCheckUtils]: 45: Hoare triple {59445#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {59445#false} is VALID [2022-04-27 22:27:24,616 INFO L272 TraceCheckUtils]: 44: Hoare triple {59445#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {59445#false} is VALID [2022-04-27 22:27:24,616 INFO L290 TraceCheckUtils]: 43: Hoare triple {59445#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {59445#false} is VALID [2022-04-27 22:27:24,616 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {59445#false} {59444#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {59445#false} is VALID [2022-04-27 22:27:24,616 INFO L290 TraceCheckUtils]: 41: Hoare triple {59445#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,616 INFO L290 TraceCheckUtils]: 40: Hoare triple {59445#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {59445#false} is VALID [2022-04-27 22:27:24,617 INFO L290 TraceCheckUtils]: 39: Hoare triple {59491#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {59445#false} is VALID [2022-04-27 22:27:24,617 INFO L290 TraceCheckUtils]: 38: Hoare triple {59490#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59491#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,617 INFO L290 TraceCheckUtils]: 37: Hoare triple {59489#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59490#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,618 INFO L290 TraceCheckUtils]: 36: Hoare triple {59488#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59489#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:27:24,618 INFO L290 TraceCheckUtils]: 35: Hoare triple {59487#(<= 4 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {59488#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:27:24,618 INFO L290 TraceCheckUtils]: 34: Hoare triple {59487#(<= 4 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,618 INFO L290 TraceCheckUtils]: 33: Hoare triple {59487#(<= 4 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,619 INFO L290 TraceCheckUtils]: 32: Hoare triple {59487#(<= 4 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,619 INFO L290 TraceCheckUtils]: 31: Hoare triple {59486#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59487#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:27:24,619 INFO L290 TraceCheckUtils]: 30: Hoare triple {59485#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59486#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:27:24,620 INFO L290 TraceCheckUtils]: 29: Hoare triple {59484#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59485#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:27:24,620 INFO L290 TraceCheckUtils]: 28: Hoare triple {59483#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {59484#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:27:24,620 INFO L290 TraceCheckUtils]: 27: Hoare triple {59444#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {59483#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:27:24,620 INFO L272 TraceCheckUtils]: 26: Hoare triple {59444#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,620 INFO L290 TraceCheckUtils]: 25: Hoare triple {59444#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {59444#true} is VALID [2022-04-27 22:27:24,620 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {59444#true} {59444#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,620 INFO L290 TraceCheckUtils]: 23: Hoare triple {59444#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 22: Hoare triple {59444#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 21: Hoare triple {59444#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 20: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 19: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 18: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 17: Hoare triple {59444#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 16: Hoare triple {59444#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 15: Hoare triple {59444#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 14: Hoare triple {59444#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 13: Hoare triple {59444#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 12: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 11: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 10: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 9: Hoare triple {59444#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {59444#true} is VALID [2022-04-27 22:27:24,621 INFO L290 TraceCheckUtils]: 8: Hoare triple {59444#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L272 TraceCheckUtils]: 7: Hoare triple {59444#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L290 TraceCheckUtils]: 6: Hoare triple {59444#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L290 TraceCheckUtils]: 5: Hoare triple {59444#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L272 TraceCheckUtils]: 4: Hoare triple {59444#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59444#true} {59444#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L290 TraceCheckUtils]: 2: Hoare triple {59444#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L290 TraceCheckUtils]: 1: Hoare triple {59444#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L272 TraceCheckUtils]: 0: Hoare triple {59444#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59444#true} is VALID [2022-04-27 22:27:24,622 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:27:24,622 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1290534698] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:27:24,622 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:27:24,622 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11, 11] total 16 [2022-04-27 22:27:24,623 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [745743285] [2022-04-27 22:27:24,623 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:27:24,623 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.5) internal successors, (40), 15 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 48 [2022-04-27 22:27:24,623 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:27:24,623 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.5) internal successors, (40), 15 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:27:24,641 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:24,641 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-27 22:27:24,642 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:27:24,642 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-27 22:27:24,642 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=159, Unknown=0, NotChecked=0, Total=240 [2022-04-27 22:27:24,642 INFO L87 Difference]: Start difference. First operand 375 states and 428 transitions. Second operand has 16 states, 16 states have (on average 2.5) internal successors, (40), 15 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:27:26,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:26,543 INFO L93 Difference]: Finished difference Result 409 states and 468 transitions. [2022-04-27 22:27:26,543 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-27 22:27:26,543 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.5) internal successors, (40), 15 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 48 [2022-04-27 22:27:26,543 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:27:26,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.5) internal successors, (40), 15 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:27:26,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 84 transitions. [2022-04-27 22:27:26,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.5) internal successors, (40), 15 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:27:26,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 84 transitions. [2022-04-27 22:27:26,545 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 84 transitions. [2022-04-27 22:27:26,583 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:26,591 INFO L225 Difference]: With dead ends: 409 [2022-04-27 22:27:26,591 INFO L226 Difference]: Without dead ends: 382 [2022-04-27 22:27:26,593 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 97 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 167 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=301, Invalid=629, Unknown=0, NotChecked=0, Total=930 [2022-04-27 22:27:26,595 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 60 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 325 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 352 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 325 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:27:26,595 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [62 Valid, 81 Invalid, 352 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 325 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:27:26,595 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 382 states. [2022-04-27 22:27:28,113 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 382 to 382. [2022-04-27 22:27:28,113 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:27:28,113 INFO L82 GeneralOperation]: Start isEquivalent. First operand 382 states. Second operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:28,113 INFO L74 IsIncluded]: Start isIncluded. First operand 382 states. Second operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:28,114 INFO L87 Difference]: Start difference. First operand 382 states. Second operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:28,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:28,119 INFO L93 Difference]: Finished difference Result 382 states and 435 transitions. [2022-04-27 22:27:28,120 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 435 transitions. [2022-04-27 22:27:28,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:28,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:28,121 INFO L74 IsIncluded]: Start isIncluded. First operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) Second operand 382 states. [2022-04-27 22:27:28,121 INFO L87 Difference]: Start difference. First operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) Second operand 382 states. [2022-04-27 22:27:28,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:28,127 INFO L93 Difference]: Finished difference Result 382 states and 435 transitions. [2022-04-27 22:27:28,127 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 435 transitions. [2022-04-27 22:27:28,128 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:28,128 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:28,128 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:27:28,128 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:27:28,128 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (33), 18 states have call predecessors, (33), 18 states have call successors, (33) [2022-04-27 22:27:28,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 382 states to 382 states and 435 transitions. [2022-04-27 22:27:28,135 INFO L78 Accepts]: Start accepts. Automaton has 382 states and 435 transitions. Word has length 48 [2022-04-27 22:27:28,135 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:27:28,135 INFO L495 AbstractCegarLoop]: Abstraction has 382 states and 435 transitions. [2022-04-27 22:27:28,136 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.5) internal successors, (40), 15 states have internal predecessors, (40), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:27:28,136 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 435 transitions. [2022-04-27 22:27:28,137 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 22:27:28,137 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:27:28,137 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 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-27 22:27:28,155 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Forceful destruction successful, exit code 0 [2022-04-27 22:27:28,339 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable51,43 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:28,339 INFO L420 AbstractCegarLoop]: === Iteration 53 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:27:28,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:27:28,340 INFO L85 PathProgramCache]: Analyzing trace with hash -1923782110, now seen corresponding path program 43 times [2022-04-27 22:27:28,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:27:28,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1735454371] [2022-04-27 22:27:28,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:27:28,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:27:28,378 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:28,431 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:27:28,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:28,434 INFO L290 TraceCheckUtils]: 0: Hoare triple {61749#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {61704#true} is VALID [2022-04-27 22:27:28,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {61704#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:28,434 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {61704#true} {61704#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:28,434 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:27:28,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:28,637 INFO L290 TraceCheckUtils]: 0: Hoare triple {61704#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,637 INFO L290 TraceCheckUtils]: 1: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,637 INFO L290 TraceCheckUtils]: 2: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,638 INFO L290 TraceCheckUtils]: 3: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:28,638 INFO L290 TraceCheckUtils]: 4: Hoare triple {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:28,639 INFO L290 TraceCheckUtils]: 5: Hoare triple {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:28,639 INFO L290 TraceCheckUtils]: 6: Hoare triple {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:28,640 INFO L290 TraceCheckUtils]: 7: Hoare triple {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,640 INFO L290 TraceCheckUtils]: 8: Hoare triple {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,641 INFO L290 TraceCheckUtils]: 9: Hoare triple {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:28,641 INFO L290 TraceCheckUtils]: 10: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:28,642 INFO L290 TraceCheckUtils]: 11: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61758#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 7) (<= 7 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:27:28,642 INFO L290 TraceCheckUtils]: 12: Hoare triple {61758#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 7) (<= 7 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:28,642 INFO L290 TraceCheckUtils]: 13: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:28,643 INFO L290 TraceCheckUtils]: 14: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:28,643 INFO L290 TraceCheckUtils]: 15: Hoare triple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:28,644 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} {61704#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {61726#(and (<= 7 |main_#t~ret8|) (<= |main_#t~ret8| 7))} is VALID [2022-04-27 22:27:28,644 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:27:28,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:28,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {61704#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:28,892 INFO L290 TraceCheckUtils]: 1: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:28,892 INFO L290 TraceCheckUtils]: 2: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:28,893 INFO L290 TraceCheckUtils]: 3: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:28,893 INFO L290 TraceCheckUtils]: 4: Hoare triple {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:28,894 INFO L290 TraceCheckUtils]: 5: Hoare triple {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:28,894 INFO L290 TraceCheckUtils]: 6: Hoare triple {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:28,894 INFO L290 TraceCheckUtils]: 7: Hoare triple {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:28,895 INFO L290 TraceCheckUtils]: 8: Hoare triple {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:27:28,895 INFO L290 TraceCheckUtils]: 9: Hoare triple {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:28,896 INFO L290 TraceCheckUtils]: 10: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:28,896 INFO L290 TraceCheckUtils]: 11: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61769#(and (<= (+ student_version_~j~1 student_version_~y~1) 7) (<= 7 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:27:28,897 INFO L290 TraceCheckUtils]: 12: Hoare triple {61769#(and (<= (+ student_version_~j~1 student_version_~y~1) 7) (<= 7 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:28,897 INFO L290 TraceCheckUtils]: 13: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:28,897 INFO L290 TraceCheckUtils]: 14: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:28,898 INFO L290 TraceCheckUtils]: 15: Hoare triple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:28,899 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {61745#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:28,899 INFO L272 TraceCheckUtils]: 0: Hoare triple {61704#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61749#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:27:28,899 INFO L290 TraceCheckUtils]: 1: Hoare triple {61749#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {61704#true} is VALID [2022-04-27 22:27:28,899 INFO L290 TraceCheckUtils]: 2: Hoare triple {61704#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:28,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {61704#true} {61704#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:28,899 INFO L272 TraceCheckUtils]: 4: Hoare triple {61704#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:28,899 INFO L290 TraceCheckUtils]: 5: Hoare triple {61704#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:28,899 INFO L290 TraceCheckUtils]: 6: Hoare triple {61704#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:28,900 INFO L272 TraceCheckUtils]: 7: Hoare triple {61704#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:28,900 INFO L290 TraceCheckUtils]: 8: Hoare triple {61704#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,900 INFO L290 TraceCheckUtils]: 9: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,901 INFO L290 TraceCheckUtils]: 10: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,901 INFO L290 TraceCheckUtils]: 11: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:28,902 INFO L290 TraceCheckUtils]: 12: Hoare triple {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:28,902 INFO L290 TraceCheckUtils]: 13: Hoare triple {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:28,903 INFO L290 TraceCheckUtils]: 14: Hoare triple {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:28,903 INFO L290 TraceCheckUtils]: 15: Hoare triple {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,904 INFO L290 TraceCheckUtils]: 16: Hoare triple {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:27:28,904 INFO L290 TraceCheckUtils]: 17: Hoare triple {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:28,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:28,905 INFO L290 TraceCheckUtils]: 19: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61758#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 7) (<= 7 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:27:28,905 INFO L290 TraceCheckUtils]: 20: Hoare triple {61758#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 7) (<= 7 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:28,906 INFO L290 TraceCheckUtils]: 21: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:28,906 INFO L290 TraceCheckUtils]: 22: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:28,906 INFO L290 TraceCheckUtils]: 23: Hoare triple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:28,907 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} {61704#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {61726#(and (<= 7 |main_#t~ret8|) (<= |main_#t~ret8| 7))} is VALID [2022-04-27 22:27:28,907 INFO L290 TraceCheckUtils]: 25: Hoare triple {61726#(and (<= 7 |main_#t~ret8|) (<= |main_#t~ret8| 7))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} is VALID [2022-04-27 22:27:28,907 INFO L272 TraceCheckUtils]: 26: Hoare triple {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:28,908 INFO L290 TraceCheckUtils]: 27: Hoare triple {61704#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:28,908 INFO L290 TraceCheckUtils]: 28: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:28,908 INFO L290 TraceCheckUtils]: 29: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:28,909 INFO L290 TraceCheckUtils]: 30: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:28,909 INFO L290 TraceCheckUtils]: 31: Hoare triple {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:28,910 INFO L290 TraceCheckUtils]: 32: Hoare triple {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:28,910 INFO L290 TraceCheckUtils]: 33: Hoare triple {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:28,911 INFO L290 TraceCheckUtils]: 34: Hoare triple {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:28,911 INFO L290 TraceCheckUtils]: 35: Hoare triple {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:27:28,912 INFO L290 TraceCheckUtils]: 36: Hoare triple {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:28,912 INFO L290 TraceCheckUtils]: 37: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:28,912 INFO L290 TraceCheckUtils]: 38: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61769#(and (<= (+ student_version_~j~1 student_version_~y~1) 7) (<= 7 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:27:28,913 INFO L290 TraceCheckUtils]: 39: Hoare triple {61769#(and (<= (+ student_version_~j~1 student_version_~y~1) 7) (<= 7 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:28,913 INFO L290 TraceCheckUtils]: 40: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:28,914 INFO L290 TraceCheckUtils]: 41: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:28,914 INFO L290 TraceCheckUtils]: 42: Hoare triple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:28,915 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {61745#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:28,915 INFO L290 TraceCheckUtils]: 44: Hoare triple {61745#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {61746#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:27:28,916 INFO L272 TraceCheckUtils]: 45: Hoare triple {61746#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {61747#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:27:28,916 INFO L290 TraceCheckUtils]: 46: Hoare triple {61747#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {61748#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:27:28,916 INFO L290 TraceCheckUtils]: 47: Hoare triple {61748#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {61705#false} is VALID [2022-04-27 22:27:28,916 INFO L290 TraceCheckUtils]: 48: Hoare triple {61705#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61705#false} is VALID [2022-04-27 22:27:28,917 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 58 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:27:28,917 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:27:28,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1735454371] [2022-04-27 22:27:28,917 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1735454371] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:27:28,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [925324833] [2022-04-27 22:27:28,917 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:27:28,917 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:28,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:27:28,918 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:27:28,928 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-04-27 22:27:28,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:28,995 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-27 22:27:29,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:29,004 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:27:29,544 INFO L272 TraceCheckUtils]: 0: Hoare triple {61704#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,544 INFO L290 TraceCheckUtils]: 1: Hoare triple {61704#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {61704#true} is VALID [2022-04-27 22:27:29,544 INFO L290 TraceCheckUtils]: 2: Hoare triple {61704#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,544 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {61704#true} {61704#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,544 INFO L272 TraceCheckUtils]: 4: Hoare triple {61704#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,544 INFO L290 TraceCheckUtils]: 5: Hoare triple {61704#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:29,544 INFO L290 TraceCheckUtils]: 6: Hoare triple {61704#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,545 INFO L272 TraceCheckUtils]: 7: Hoare triple {61704#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:29,545 INFO L290 TraceCheckUtils]: 8: Hoare triple {61704#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,545 INFO L290 TraceCheckUtils]: 9: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,545 INFO L290 TraceCheckUtils]: 10: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,546 INFO L290 TraceCheckUtils]: 11: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:29,546 INFO L290 TraceCheckUtils]: 12: Hoare triple {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:29,547 INFO L290 TraceCheckUtils]: 13: Hoare triple {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:29,547 INFO L290 TraceCheckUtils]: 14: Hoare triple {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:29,548 INFO L290 TraceCheckUtils]: 15: Hoare triple {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,548 INFO L290 TraceCheckUtils]: 16: Hoare triple {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,548 INFO L290 TraceCheckUtils]: 17: Hoare triple {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:29,549 INFO L290 TraceCheckUtils]: 18: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:29,549 INFO L290 TraceCheckUtils]: 19: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61832#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:27:29,549 INFO L290 TraceCheckUtils]: 20: Hoare triple {61832#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:29,550 INFO L290 TraceCheckUtils]: 21: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:29,550 INFO L290 TraceCheckUtils]: 22: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:29,550 INFO L290 TraceCheckUtils]: 23: Hoare triple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:29,551 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} {61704#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {61726#(and (<= 7 |main_#t~ret8|) (<= |main_#t~ret8| 7))} is VALID [2022-04-27 22:27:29,551 INFO L290 TraceCheckUtils]: 25: Hoare triple {61726#(and (<= 7 |main_#t~ret8|) (<= |main_#t~ret8| 7))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} is VALID [2022-04-27 22:27:29,551 INFO L272 TraceCheckUtils]: 26: Hoare triple {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:29,551 INFO L290 TraceCheckUtils]: 27: Hoare triple {61704#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:29,552 INFO L290 TraceCheckUtils]: 28: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:29,552 INFO L290 TraceCheckUtils]: 29: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:29,552 INFO L290 TraceCheckUtils]: 30: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:29,553 INFO L290 TraceCheckUtils]: 31: Hoare triple {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:29,553 INFO L290 TraceCheckUtils]: 32: Hoare triple {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:29,554 INFO L290 TraceCheckUtils]: 33: Hoare triple {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:29,554 INFO L290 TraceCheckUtils]: 34: Hoare triple {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:29,555 INFO L290 TraceCheckUtils]: 35: Hoare triple {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:27:29,555 INFO L290 TraceCheckUtils]: 36: Hoare triple {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:29,556 INFO L290 TraceCheckUtils]: 37: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:29,556 INFO L290 TraceCheckUtils]: 38: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61890#(and (= student_version_~y~1 0) (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:29,557 INFO L290 TraceCheckUtils]: 39: Hoare triple {61890#(and (= student_version_~y~1 0) (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:29,557 INFO L290 TraceCheckUtils]: 40: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:29,557 INFO L290 TraceCheckUtils]: 41: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:29,558 INFO L290 TraceCheckUtils]: 42: Hoare triple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:29,558 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {61906#(and (<= main_~n_stones1~0 7) (<= |main_#t~ret9| 7) (<= 7 main_~n_stones1~0) (<= 7 |main_#t~ret9|))} is VALID [2022-04-27 22:27:29,558 INFO L290 TraceCheckUtils]: 44: Hoare triple {61906#(and (<= main_~n_stones1~0 7) (<= |main_#t~ret9| 7) (<= 7 main_~n_stones1~0) (<= 7 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {61910#(and (<= main_~n_stones2~0 7) (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0) (<= 7 main_~n_stones2~0))} is VALID [2022-04-27 22:27:29,559 INFO L272 TraceCheckUtils]: 45: Hoare triple {61910#(and (<= main_~n_stones2~0 7) (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0) (<= 7 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {61914#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:27:29,559 INFO L290 TraceCheckUtils]: 46: Hoare triple {61914#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {61918#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:27:29,559 INFO L290 TraceCheckUtils]: 47: Hoare triple {61918#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {61705#false} is VALID [2022-04-27 22:27:29,559 INFO L290 TraceCheckUtils]: 48: Hoare triple {61705#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61705#false} is VALID [2022-04-27 22:27:29,559 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 58 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:27:29,560 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:27:29,928 INFO L290 TraceCheckUtils]: 48: Hoare triple {61705#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61705#false} is VALID [2022-04-27 22:27:29,929 INFO L290 TraceCheckUtils]: 47: Hoare triple {61918#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {61705#false} is VALID [2022-04-27 22:27:29,929 INFO L290 TraceCheckUtils]: 46: Hoare triple {61914#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {61918#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:27:29,930 INFO L272 TraceCheckUtils]: 45: Hoare triple {61746#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {61914#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:27:29,930 INFO L290 TraceCheckUtils]: 44: Hoare triple {61745#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {61746#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:27:29,931 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {61745#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:29,931 INFO L290 TraceCheckUtils]: 42: Hoare triple {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:29,932 INFO L290 TraceCheckUtils]: 41: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {61771#(and (<= |student_version_#res| 7) (<= 7 |student_version_#res|))} is VALID [2022-04-27 22:27:29,932 INFO L290 TraceCheckUtils]: 40: Hoare triple {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:29,932 INFO L290 TraceCheckUtils]: 39: Hoare triple {61769#(and (<= (+ student_version_~j~1 student_version_~y~1) 7) (<= 7 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61770#(and (<= student_version_~y~1 7) (<= 7 student_version_~y~1))} is VALID [2022-04-27 22:27:29,933 INFO L290 TraceCheckUtils]: 38: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {61769#(and (<= (+ student_version_~j~1 student_version_~y~1) 7) (<= 7 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:27:29,933 INFO L290 TraceCheckUtils]: 37: Hoare triple {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:29,933 INFO L290 TraceCheckUtils]: 36: Hoare triple {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61768#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:27:29,934 INFO L290 TraceCheckUtils]: 35: Hoare triple {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61767#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:27:29,934 INFO L290 TraceCheckUtils]: 34: Hoare triple {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61766#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:29,935 INFO L290 TraceCheckUtils]: 33: Hoare triple {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61765#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:29,935 INFO L290 TraceCheckUtils]: 32: Hoare triple {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61764#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:29,936 INFO L290 TraceCheckUtils]: 31: Hoare triple {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61763#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:29,936 INFO L290 TraceCheckUtils]: 30: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {61762#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:29,936 INFO L290 TraceCheckUtils]: 29: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:29,937 INFO L290 TraceCheckUtils]: 28: Hoare triple {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:29,937 INFO L290 TraceCheckUtils]: 27: Hoare triple {61704#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {61761#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:29,937 INFO L272 TraceCheckUtils]: 26: Hoare triple {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:29,937 INFO L290 TraceCheckUtils]: 25: Hoare triple {61726#(and (<= 7 |main_#t~ret8|) (<= |main_#t~ret8| 7))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {61727#(and (<= main_~n_stones1~0 7) (<= 7 main_~n_stones1~0))} is VALID [2022-04-27 22:27:29,938 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} {61704#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {61726#(and (<= 7 |main_#t~ret8|) (<= |main_#t~ret8| 7))} is VALID [2022-04-27 22:27:29,938 INFO L290 TraceCheckUtils]: 23: Hoare triple {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:29,939 INFO L290 TraceCheckUtils]: 22: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {61760#(and (<= 7 |correct_version_#res|) (<= |correct_version_#res| 7))} is VALID [2022-04-27 22:27:29,939 INFO L290 TraceCheckUtils]: 21: Hoare triple {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:29,940 INFO L290 TraceCheckUtils]: 20: Hoare triple {61758#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 7) (<= 7 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61759#(and (<= correct_version_~y~0 7) (<= 7 correct_version_~y~0))} is VALID [2022-04-27 22:27:29,940 INFO L290 TraceCheckUtils]: 19: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {61758#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 7) (<= 7 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:27:29,940 INFO L290 TraceCheckUtils]: 18: Hoare triple {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:29,941 INFO L290 TraceCheckUtils]: 17: Hoare triple {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61757#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:27:29,941 INFO L290 TraceCheckUtils]: 16: Hoare triple {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61756#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,941 INFO L290 TraceCheckUtils]: 15: Hoare triple {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61755#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,942 INFO L290 TraceCheckUtils]: 14: Hoare triple {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61754#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:29,942 INFO L290 TraceCheckUtils]: 13: Hoare triple {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61753#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:29,942 INFO L290 TraceCheckUtils]: 12: Hoare triple {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61752#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:29,943 INFO L290 TraceCheckUtils]: 11: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {61751#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:29,943 INFO L290 TraceCheckUtils]: 10: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,943 INFO L290 TraceCheckUtils]: 9: Hoare triple {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,944 INFO L290 TraceCheckUtils]: 8: Hoare triple {61704#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {61750#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:29,944 INFO L272 TraceCheckUtils]: 7: Hoare triple {61704#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L290 TraceCheckUtils]: 6: Hoare triple {61704#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {61704#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L272 TraceCheckUtils]: 4: Hoare triple {61704#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {61704#true} {61704#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L290 TraceCheckUtils]: 2: Hoare triple {61704#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L290 TraceCheckUtils]: 1: Hoare triple {61704#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L272 TraceCheckUtils]: 0: Hoare triple {61704#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61704#true} is VALID [2022-04-27 22:27:29,944 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 58 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:27:29,944 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [925324833] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:27:29,944 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:27:29,945 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [31, 30, 30] total 37 [2022-04-27 22:27:29,945 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [346530528] [2022-04-27 22:27:29,945 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:27:29,945 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:27:29,946 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:27:29,946 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:29,969 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:29,969 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-04-27 22:27:29,970 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:27:29,970 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-04-27 22:27:29,970 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=1251, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:27:29,970 INFO L87 Difference]: Start difference. First operand 382 states and 435 transitions. Second operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:36,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:36,359 INFO L93 Difference]: Finished difference Result 460 states and 524 transitions. [2022-04-27 22:27:36,359 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-27 22:27:36,359 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:27:36,360 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:27:36,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:36,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 174 transitions. [2022-04-27 22:27:36,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:36,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 174 transitions. [2022-04-27 22:27:36,368 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 174 transitions. [2022-04-27 22:27:36,453 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 174 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:36,464 INFO L225 Difference]: With dead ends: 460 [2022-04-27 22:27:36,464 INFO L226 Difference]: Without dead ends: 454 [2022-04-27 22:27:36,466 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 92 SyntacticMatches, 5 SemanticMatches, 64 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 587 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=229, Invalid=4061, Unknown=0, NotChecked=0, Total=4290 [2022-04-27 22:27:36,479 INFO L413 NwaCegarLoop]: 86 mSDtfsCounter, 188 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 4061 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 193 SdHoareTripleChecker+Valid, 243 SdHoareTripleChecker+Invalid, 4107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 4061 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:27:36,479 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [193 Valid, 243 Invalid, 4107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 4061 Invalid, 0 Unknown, 0 Unchecked, 2.1s Time] [2022-04-27 22:27:36,480 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 454 states. [2022-04-27 22:27:39,029 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 454 to 398. [2022-04-27 22:27:39,029 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:27:39,030 INFO L82 GeneralOperation]: Start isEquivalent. First operand 454 states. Second operand has 398 states, 341 states have (on average 1.1642228739002933) internal successors, (397), 373 states have internal predecessors, (397), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (36), 19 states have call predecessors, (36), 19 states have call successors, (36) [2022-04-27 22:27:39,030 INFO L74 IsIncluded]: Start isIncluded. First operand 454 states. Second operand has 398 states, 341 states have (on average 1.1642228739002933) internal successors, (397), 373 states have internal predecessors, (397), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (36), 19 states have call predecessors, (36), 19 states have call successors, (36) [2022-04-27 22:27:39,030 INFO L87 Difference]: Start difference. First operand 454 states. Second operand has 398 states, 341 states have (on average 1.1642228739002933) internal successors, (397), 373 states have internal predecessors, (397), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (36), 19 states have call predecessors, (36), 19 states have call successors, (36) [2022-04-27 22:27:39,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:39,040 INFO L93 Difference]: Finished difference Result 454 states and 518 transitions. [2022-04-27 22:27:39,040 INFO L276 IsEmpty]: Start isEmpty. Operand 454 states and 518 transitions. [2022-04-27 22:27:39,041 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:39,041 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:39,042 INFO L74 IsIncluded]: Start isIncluded. First operand has 398 states, 341 states have (on average 1.1642228739002933) internal successors, (397), 373 states have internal predecessors, (397), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (36), 19 states have call predecessors, (36), 19 states have call successors, (36) Second operand 454 states. [2022-04-27 22:27:39,042 INFO L87 Difference]: Start difference. First operand has 398 states, 341 states have (on average 1.1642228739002933) internal successors, (397), 373 states have internal predecessors, (397), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (36), 19 states have call predecessors, (36), 19 states have call successors, (36) Second operand 454 states. [2022-04-27 22:27:39,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:39,052 INFO L93 Difference]: Finished difference Result 454 states and 518 transitions. [2022-04-27 22:27:39,052 INFO L276 IsEmpty]: Start isEmpty. Operand 454 states and 518 transitions. [2022-04-27 22:27:39,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:39,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:39,053 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:27:39,053 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:27:39,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 398 states, 341 states have (on average 1.1642228739002933) internal successors, (397), 373 states have internal predecessors, (397), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (36), 19 states have call predecessors, (36), 19 states have call successors, (36) [2022-04-27 22:27:39,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 398 states to 398 states and 454 transitions. [2022-04-27 22:27:39,062 INFO L78 Accepts]: Start accepts. Automaton has 398 states and 454 transitions. Word has length 49 [2022-04-27 22:27:39,062 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:27:39,062 INFO L495 AbstractCegarLoop]: Abstraction has 398 states and 454 transitions. [2022-04-27 22:27:39,062 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:39,062 INFO L276 IsEmpty]: Start isEmpty. Operand 398 states and 454 transitions. [2022-04-27 22:27:39,064 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 22:27:39,064 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:27:39,064 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:27:39,083 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Ended with exit code 0 [2022-04-27 22:27:39,279 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 44 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable52 [2022-04-27 22:27:39,280 INFO L420 AbstractCegarLoop]: === Iteration 54 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:27:39,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:27:39,280 INFO L85 PathProgramCache]: Analyzing trace with hash 2087113895, now seen corresponding path program 44 times [2022-04-27 22:27:39,280 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:27:39,280 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [573855349] [2022-04-27 22:27:39,280 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:27:39,280 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:27:39,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:39,344 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:27:39,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:39,365 INFO L290 TraceCheckUtils]: 0: Hoare triple {64312#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {64267#true} is VALID [2022-04-27 22:27:39,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {64267#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:39,366 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {64267#true} {64267#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:39,366 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:27:39,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:39,489 INFO L290 TraceCheckUtils]: 0: Hoare triple {64267#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,489 INFO L290 TraceCheckUtils]: 1: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,490 INFO L290 TraceCheckUtils]: 2: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,490 INFO L290 TraceCheckUtils]: 3: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,490 INFO L290 TraceCheckUtils]: 4: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:39,491 INFO L290 TraceCheckUtils]: 5: Hoare triple {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:39,491 INFO L290 TraceCheckUtils]: 6: Hoare triple {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:39,491 INFO L290 TraceCheckUtils]: 7: Hoare triple {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:39,492 INFO L290 TraceCheckUtils]: 8: Hoare triple {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,492 INFO L290 TraceCheckUtils]: 9: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,492 INFO L290 TraceCheckUtils]: 10: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64319#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} is VALID [2022-04-27 22:27:39,493 INFO L290 TraceCheckUtils]: 11: Hoare triple {64319#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64320#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:27:39,493 INFO L290 TraceCheckUtils]: 12: Hoare triple {64320#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:39,493 INFO L290 TraceCheckUtils]: 13: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:39,494 INFO L290 TraceCheckUtils]: 14: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:39,494 INFO L290 TraceCheckUtils]: 15: Hoare triple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:39,494 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {64267#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {64289#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:27:39,494 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:27:39,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:39,641 INFO L290 TraceCheckUtils]: 0: Hoare triple {64267#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,642 INFO L290 TraceCheckUtils]: 1: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,642 INFO L290 TraceCheckUtils]: 2: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,642 INFO L290 TraceCheckUtils]: 3: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,643 INFO L290 TraceCheckUtils]: 4: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:39,643 INFO L290 TraceCheckUtils]: 5: Hoare triple {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:39,643 INFO L290 TraceCheckUtils]: 6: Hoare triple {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:39,644 INFO L290 TraceCheckUtils]: 7: Hoare triple {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:39,644 INFO L290 TraceCheckUtils]: 8: Hoare triple {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:39,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:39,645 INFO L290 TraceCheckUtils]: 10: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64329#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} is VALID [2022-04-27 22:27:39,645 INFO L290 TraceCheckUtils]: 11: Hoare triple {64329#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64330#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:27:39,645 INFO L290 TraceCheckUtils]: 12: Hoare triple {64330#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:39,646 INFO L290 TraceCheckUtils]: 13: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:39,646 INFO L290 TraceCheckUtils]: 14: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:39,646 INFO L290 TraceCheckUtils]: 15: Hoare triple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:39,647 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {64308#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:39,647 INFO L272 TraceCheckUtils]: 0: Hoare triple {64267#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64312#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:27:39,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {64312#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {64267#true} is VALID [2022-04-27 22:27:39,647 INFO L290 TraceCheckUtils]: 2: Hoare triple {64267#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:39,647 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64267#true} {64267#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:39,647 INFO L272 TraceCheckUtils]: 4: Hoare triple {64267#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:39,648 INFO L290 TraceCheckUtils]: 5: Hoare triple {64267#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:39,648 INFO L290 TraceCheckUtils]: 6: Hoare triple {64267#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:39,648 INFO L272 TraceCheckUtils]: 7: Hoare triple {64267#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:39,648 INFO L290 TraceCheckUtils]: 8: Hoare triple {64267#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,648 INFO L290 TraceCheckUtils]: 9: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,649 INFO L290 TraceCheckUtils]: 10: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,649 INFO L290 TraceCheckUtils]: 11: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,649 INFO L290 TraceCheckUtils]: 12: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:39,650 INFO L290 TraceCheckUtils]: 13: Hoare triple {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:39,650 INFO L290 TraceCheckUtils]: 14: Hoare triple {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:39,650 INFO L290 TraceCheckUtils]: 15: Hoare triple {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:39,651 INFO L290 TraceCheckUtils]: 16: Hoare triple {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,651 INFO L290 TraceCheckUtils]: 17: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:39,651 INFO L290 TraceCheckUtils]: 18: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64319#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} is VALID [2022-04-27 22:27:39,652 INFO L290 TraceCheckUtils]: 19: Hoare triple {64319#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64320#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:27:39,652 INFO L290 TraceCheckUtils]: 20: Hoare triple {64320#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:39,652 INFO L290 TraceCheckUtils]: 21: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:39,652 INFO L290 TraceCheckUtils]: 22: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:39,653 INFO L290 TraceCheckUtils]: 23: Hoare triple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:39,653 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {64267#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {64289#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:27:39,653 INFO L290 TraceCheckUtils]: 25: Hoare triple {64289#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:27:39,653 INFO L272 TraceCheckUtils]: 26: Hoare triple {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:39,654 INFO L290 TraceCheckUtils]: 27: Hoare triple {64267#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,654 INFO L290 TraceCheckUtils]: 28: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,654 INFO L290 TraceCheckUtils]: 29: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,654 INFO L290 TraceCheckUtils]: 30: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:39,655 INFO L290 TraceCheckUtils]: 31: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:39,656 INFO L290 TraceCheckUtils]: 32: Hoare triple {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:39,656 INFO L290 TraceCheckUtils]: 33: Hoare triple {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:39,657 INFO L290 TraceCheckUtils]: 34: Hoare triple {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:39,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:39,657 INFO L290 TraceCheckUtils]: 36: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:39,658 INFO L290 TraceCheckUtils]: 37: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64329#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} is VALID [2022-04-27 22:27:39,658 INFO L290 TraceCheckUtils]: 38: Hoare triple {64329#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64330#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:27:39,658 INFO L290 TraceCheckUtils]: 39: Hoare triple {64330#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:39,659 INFO L290 TraceCheckUtils]: 40: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:39,659 INFO L290 TraceCheckUtils]: 41: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:39,659 INFO L290 TraceCheckUtils]: 42: Hoare triple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:39,660 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {64308#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:39,660 INFO L290 TraceCheckUtils]: 44: Hoare triple {64308#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {64309#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:27:39,660 INFO L272 TraceCheckUtils]: 45: Hoare triple {64309#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {64310#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:27:39,661 INFO L290 TraceCheckUtils]: 46: Hoare triple {64310#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {64311#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:27:39,661 INFO L290 TraceCheckUtils]: 47: Hoare triple {64311#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {64268#false} is VALID [2022-04-27 22:27:39,661 INFO L290 TraceCheckUtils]: 48: Hoare triple {64268#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64268#false} is VALID [2022-04-27 22:27:39,661 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:27:39,662 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:27:39,662 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [573855349] [2022-04-27 22:27:39,662 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [573855349] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:27:39,662 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1762999922] [2022-04-27 22:27:39,662 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:27:39,662 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:39,662 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:27:39,663 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:27:39,672 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2022-04-27 22:27:39,758 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:27:39,758 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:27:39,759 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 51 conjunts are in the unsatisfiable core [2022-04-27 22:27:39,765 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:39,766 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:27:40,369 INFO L272 TraceCheckUtils]: 0: Hoare triple {64267#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,369 INFO L290 TraceCheckUtils]: 1: Hoare triple {64267#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {64267#true} is VALID [2022-04-27 22:27:40,369 INFO L290 TraceCheckUtils]: 2: Hoare triple {64267#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,369 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64267#true} {64267#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,369 INFO L272 TraceCheckUtils]: 4: Hoare triple {64267#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,369 INFO L290 TraceCheckUtils]: 5: Hoare triple {64267#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:40,370 INFO L290 TraceCheckUtils]: 6: Hoare triple {64267#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,370 INFO L272 TraceCheckUtils]: 7: Hoare triple {64267#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:40,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {64267#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,371 INFO L290 TraceCheckUtils]: 10: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,371 INFO L290 TraceCheckUtils]: 11: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,372 INFO L290 TraceCheckUtils]: 12: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:40,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:40,372 INFO L290 TraceCheckUtils]: 14: Hoare triple {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:40,373 INFO L290 TraceCheckUtils]: 15: Hoare triple {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:40,373 INFO L290 TraceCheckUtils]: 16: Hoare triple {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,374 INFO L290 TraceCheckUtils]: 17: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,374 INFO L290 TraceCheckUtils]: 18: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64390#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:27:40,374 INFO L290 TraceCheckUtils]: 19: Hoare triple {64390#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64394#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} is VALID [2022-04-27 22:27:40,375 INFO L290 TraceCheckUtils]: 20: Hoare triple {64394#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:40,375 INFO L290 TraceCheckUtils]: 21: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:40,376 INFO L290 TraceCheckUtils]: 22: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:40,376 INFO L290 TraceCheckUtils]: 23: Hoare triple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:40,377 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {64267#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {64289#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:27:40,377 INFO L290 TraceCheckUtils]: 25: Hoare triple {64289#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:27:40,377 INFO L272 TraceCheckUtils]: 26: Hoare triple {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:40,377 INFO L290 TraceCheckUtils]: 27: Hoare triple {64267#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,378 INFO L290 TraceCheckUtils]: 28: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,378 INFO L290 TraceCheckUtils]: 29: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,379 INFO L290 TraceCheckUtils]: 31: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:40,379 INFO L290 TraceCheckUtils]: 32: Hoare triple {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:40,380 INFO L290 TraceCheckUtils]: 33: Hoare triple {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:40,380 INFO L290 TraceCheckUtils]: 34: Hoare triple {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:40,381 INFO L290 TraceCheckUtils]: 35: Hoare triple {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:40,381 INFO L290 TraceCheckUtils]: 36: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:40,381 INFO L290 TraceCheckUtils]: 37: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64449#(and (<= student_version_~j~1 5) (= student_version_~y~1 0) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:40,382 INFO L290 TraceCheckUtils]: 38: Hoare triple {64449#(and (<= student_version_~j~1 5) (= student_version_~y~1 0) (<= 5 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64453#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:27:40,382 INFO L290 TraceCheckUtils]: 39: Hoare triple {64453#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:40,383 INFO L290 TraceCheckUtils]: 40: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:40,383 INFO L290 TraceCheckUtils]: 41: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:40,383 INFO L290 TraceCheckUtils]: 42: Hoare triple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:40,384 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {64469#(and (<= 10 main_~n_stones1~0) (<= 10 |main_#t~ret9|) (<= main_~n_stones1~0 10) (<= |main_#t~ret9| 10))} is VALID [2022-04-27 22:27:40,384 INFO L290 TraceCheckUtils]: 44: Hoare triple {64469#(and (<= 10 main_~n_stones1~0) (<= 10 |main_#t~ret9|) (<= main_~n_stones1~0 10) (<= |main_#t~ret9| 10))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {64473#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones2~0 10) (<= 10 main_~n_stones2~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:27:40,385 INFO L272 TraceCheckUtils]: 45: Hoare triple {64473#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones2~0 10) (<= 10 main_~n_stones2~0) (<= main_~n_stones1~0 10))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {64477#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:27:40,385 INFO L290 TraceCheckUtils]: 46: Hoare triple {64477#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {64481#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:27:40,385 INFO L290 TraceCheckUtils]: 47: Hoare triple {64481#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {64268#false} is VALID [2022-04-27 22:27:40,386 INFO L290 TraceCheckUtils]: 48: Hoare triple {64268#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64268#false} is VALID [2022-04-27 22:27:40,386 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:27:40,386 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:27:40,860 INFO L290 TraceCheckUtils]: 48: Hoare triple {64268#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64268#false} is VALID [2022-04-27 22:27:40,860 INFO L290 TraceCheckUtils]: 47: Hoare triple {64481#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {64268#false} is VALID [2022-04-27 22:27:40,861 INFO L290 TraceCheckUtils]: 46: Hoare triple {64477#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {64481#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:27:40,861 INFO L272 TraceCheckUtils]: 45: Hoare triple {64309#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {64477#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:27:40,862 INFO L290 TraceCheckUtils]: 44: Hoare triple {64308#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {64309#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:27:40,863 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {64308#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:40,863 INFO L290 TraceCheckUtils]: 42: Hoare triple {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:40,863 INFO L290 TraceCheckUtils]: 41: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {64332#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:27:40,864 INFO L290 TraceCheckUtils]: 40: Hoare triple {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:40,864 INFO L290 TraceCheckUtils]: 39: Hoare triple {64330#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64331#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:27:40,865 INFO L290 TraceCheckUtils]: 38: Hoare triple {64329#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64330#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:27:40,865 INFO L290 TraceCheckUtils]: 37: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {64329#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} is VALID [2022-04-27 22:27:40,865 INFO L290 TraceCheckUtils]: 36: Hoare triple {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:40,866 INFO L290 TraceCheckUtils]: 35: Hoare triple {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64328#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:27:40,866 INFO L290 TraceCheckUtils]: 34: Hoare triple {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64327#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:27:40,867 INFO L290 TraceCheckUtils]: 33: Hoare triple {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64326#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:40,867 INFO L290 TraceCheckUtils]: 32: Hoare triple {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64325#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:40,868 INFO L290 TraceCheckUtils]: 31: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {64324#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:40,868 INFO L290 TraceCheckUtils]: 30: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,869 INFO L290 TraceCheckUtils]: 29: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,869 INFO L290 TraceCheckUtils]: 28: Hoare triple {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,869 INFO L290 TraceCheckUtils]: 27: Hoare triple {64267#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {64323#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:40,870 INFO L272 TraceCheckUtils]: 26: Hoare triple {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:40,870 INFO L290 TraceCheckUtils]: 25: Hoare triple {64289#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {64290#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:27:40,871 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {64267#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {64289#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:27:40,871 INFO L290 TraceCheckUtils]: 23: Hoare triple {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:40,871 INFO L290 TraceCheckUtils]: 22: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {64322#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:27:40,872 INFO L290 TraceCheckUtils]: 21: Hoare triple {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:40,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {64320#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64321#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:27:40,873 INFO L290 TraceCheckUtils]: 19: Hoare triple {64319#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64320#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:27:40,873 INFO L290 TraceCheckUtils]: 18: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {64319#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} is VALID [2022-04-27 22:27:40,873 INFO L290 TraceCheckUtils]: 17: Hoare triple {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,874 INFO L290 TraceCheckUtils]: 16: Hoare triple {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64318#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,874 INFO L290 TraceCheckUtils]: 15: Hoare triple {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64317#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:27:40,875 INFO L290 TraceCheckUtils]: 14: Hoare triple {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64316#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:40,875 INFO L290 TraceCheckUtils]: 13: Hoare triple {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64315#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:40,876 INFO L290 TraceCheckUtils]: 12: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {64314#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:40,876 INFO L290 TraceCheckUtils]: 11: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,877 INFO L290 TraceCheckUtils]: 8: Hoare triple {64267#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {64313#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:40,877 INFO L272 TraceCheckUtils]: 7: Hoare triple {64267#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:40,877 INFO L290 TraceCheckUtils]: 6: Hoare triple {64267#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,878 INFO L290 TraceCheckUtils]: 5: Hoare triple {64267#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {64267#true} is VALID [2022-04-27 22:27:40,878 INFO L272 TraceCheckUtils]: 4: Hoare triple {64267#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,878 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64267#true} {64267#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,878 INFO L290 TraceCheckUtils]: 2: Hoare triple {64267#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,878 INFO L290 TraceCheckUtils]: 1: Hoare triple {64267#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {64267#true} is VALID [2022-04-27 22:27:40,878 INFO L272 TraceCheckUtils]: 0: Hoare triple {64267#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {64267#true} is VALID [2022-04-27 22:27:40,878 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:27:40,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1762999922] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:27:40,878 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:27:40,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 28, 28] total 37 [2022-04-27 22:27:40,878 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [649225686] [2022-04-27 22:27:40,878 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:27:40,879 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:27:40,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:27:40,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:40,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:40,912 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-04-27 22:27:40,912 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:27:40,912 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-04-27 22:27:40,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=85, Invalid=1247, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:27:40,913 INFO L87 Difference]: Start difference. First operand 398 states and 454 transitions. Second operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:48,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:48,196 INFO L93 Difference]: Finished difference Result 404 states and 459 transitions. [2022-04-27 22:27:48,196 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-27 22:27:48,196 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:27:48,196 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:27:48,196 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:48,197 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 140 transitions. [2022-04-27 22:27:48,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:48,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 140 transitions. [2022-04-27 22:27:48,198 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 140 transitions. [2022-04-27 22:27:48,306 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:48,314 INFO L225 Difference]: With dead ends: 404 [2022-04-27 22:27:48,314 INFO L226 Difference]: Without dead ends: 382 [2022-04-27 22:27:48,315 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 86 SyntacticMatches, 9 SemanticMatches, 62 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 606 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=231, Invalid=3801, Unknown=0, NotChecked=0, Total=4032 [2022-04-27 22:27:48,316 INFO L413 NwaCegarLoop]: 74 mSDtfsCounter, 126 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 3305 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 129 SdHoareTripleChecker+Valid, 226 SdHoareTripleChecker+Invalid, 3337 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 3305 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:27:48,316 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [129 Valid, 226 Invalid, 3337 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 3305 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-04-27 22:27:48,316 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 382 states. [2022-04-27 22:27:50,023 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 382 to 382. [2022-04-27 22:27:50,023 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:27:50,024 INFO L82 GeneralOperation]: Start isEquivalent. First operand 382 states. Second operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (34), 18 states have call predecessors, (34), 18 states have call successors, (34) [2022-04-27 22:27:50,024 INFO L74 IsIncluded]: Start isIncluded. First operand 382 states. Second operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (34), 18 states have call predecessors, (34), 18 states have call successors, (34) [2022-04-27 22:27:50,024 INFO L87 Difference]: Start difference. First operand 382 states. Second operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (34), 18 states have call predecessors, (34), 18 states have call successors, (34) [2022-04-27 22:27:50,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:50,030 INFO L93 Difference]: Finished difference Result 382 states and 436 transitions. [2022-04-27 22:27:50,030 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 436 transitions. [2022-04-27 22:27:50,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:50,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:50,036 INFO L74 IsIncluded]: Start isIncluded. First operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (34), 18 states have call predecessors, (34), 18 states have call successors, (34) Second operand 382 states. [2022-04-27 22:27:50,037 INFO L87 Difference]: Start difference. First operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (34), 18 states have call predecessors, (34), 18 states have call successors, (34) Second operand 382 states. [2022-04-27 22:27:50,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:50,043 INFO L93 Difference]: Finished difference Result 382 states and 436 transitions. [2022-04-27 22:27:50,043 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 436 transitions. [2022-04-27 22:27:50,044 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:50,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:50,044 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:27:50,044 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:27:50,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 382 states, 328 states have (on average 1.1646341463414633) internal successors, (382), 358 states have internal predecessors, (382), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (34), 18 states have call predecessors, (34), 18 states have call successors, (34) [2022-04-27 22:27:50,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 382 states to 382 states and 436 transitions. [2022-04-27 22:27:50,051 INFO L78 Accepts]: Start accepts. Automaton has 382 states and 436 transitions. Word has length 49 [2022-04-27 22:27:50,051 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:27:50,051 INFO L495 AbstractCegarLoop]: Abstraction has 382 states and 436 transitions. [2022-04-27 22:27:50,052 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:50,052 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 436 transitions. [2022-04-27 22:27:50,053 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 22:27:50,053 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:27:50,053 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 3, 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] [2022-04-27 22:27:50,069 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Ended with exit code 0 [2022-04-27 22:27:50,267 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable53,45 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:50,267 INFO L420 AbstractCegarLoop]: === Iteration 55 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:27:50,268 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:27:50,268 INFO L85 PathProgramCache]: Analyzing trace with hash 1245370818, now seen corresponding path program 45 times [2022-04-27 22:27:50,268 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:27:50,268 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [647262152] [2022-04-27 22:27:50,268 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:27:50,268 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:27:50,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:50,332 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:27:50,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:50,334 INFO L290 TraceCheckUtils]: 0: Hoare triple {66623#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {66578#true} is VALID [2022-04-27 22:27:50,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {66578#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:50,334 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {66578#true} {66578#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:50,334 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:27:50,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:50,465 INFO L290 TraceCheckUtils]: 0: Hoare triple {66578#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,466 INFO L290 TraceCheckUtils]: 3: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,466 INFO L290 TraceCheckUtils]: 4: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:50,467 INFO L290 TraceCheckUtils]: 6: Hoare triple {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:50,467 INFO L290 TraceCheckUtils]: 7: Hoare triple {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:50,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:50,468 INFO L290 TraceCheckUtils]: 9: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66628#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 9))} is VALID [2022-04-27 22:27:50,468 INFO L290 TraceCheckUtils]: 10: Hoare triple {66628#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66629#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 9))} is VALID [2022-04-27 22:27:50,469 INFO L290 TraceCheckUtils]: 11: Hoare triple {66629#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66630#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} is VALID [2022-04-27 22:27:50,469 INFO L290 TraceCheckUtils]: 12: Hoare triple {66630#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:50,469 INFO L290 TraceCheckUtils]: 13: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:50,470 INFO L290 TraceCheckUtils]: 14: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:50,470 INFO L290 TraceCheckUtils]: 15: Hoare triple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:50,470 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {66578#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {66600#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:27:50,470 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:27:50,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:50,613 INFO L290 TraceCheckUtils]: 0: Hoare triple {66578#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,614 INFO L290 TraceCheckUtils]: 1: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,614 INFO L290 TraceCheckUtils]: 2: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,614 INFO L290 TraceCheckUtils]: 3: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,615 INFO L290 TraceCheckUtils]: 4: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,615 INFO L290 TraceCheckUtils]: 5: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:50,615 INFO L290 TraceCheckUtils]: 6: Hoare triple {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:50,616 INFO L290 TraceCheckUtils]: 7: Hoare triple {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:50,616 INFO L290 TraceCheckUtils]: 8: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:50,616 INFO L290 TraceCheckUtils]: 9: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66637#(and (<= 9 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 9))} is VALID [2022-04-27 22:27:50,617 INFO L290 TraceCheckUtils]: 10: Hoare triple {66637#(and (<= 9 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 9))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66638#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 9) (<= 9 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:27:50,617 INFO L290 TraceCheckUtils]: 11: Hoare triple {66638#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 9) (<= 9 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66639#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:27:50,618 INFO L290 TraceCheckUtils]: 12: Hoare triple {66639#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:50,618 INFO L290 TraceCheckUtils]: 13: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:50,618 INFO L290 TraceCheckUtils]: 14: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:50,618 INFO L290 TraceCheckUtils]: 15: Hoare triple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:50,628 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {66619#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:50,628 INFO L272 TraceCheckUtils]: 0: Hoare triple {66578#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66623#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:27:50,628 INFO L290 TraceCheckUtils]: 1: Hoare triple {66623#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {66578#true} is VALID [2022-04-27 22:27:50,628 INFO L290 TraceCheckUtils]: 2: Hoare triple {66578#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:50,628 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66578#true} {66578#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:50,628 INFO L272 TraceCheckUtils]: 4: Hoare triple {66578#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:50,628 INFO L290 TraceCheckUtils]: 5: Hoare triple {66578#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:50,628 INFO L290 TraceCheckUtils]: 6: Hoare triple {66578#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:50,628 INFO L272 TraceCheckUtils]: 7: Hoare triple {66578#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:50,629 INFO L290 TraceCheckUtils]: 8: Hoare triple {66578#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,629 INFO L290 TraceCheckUtils]: 9: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,629 INFO L290 TraceCheckUtils]: 10: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,630 INFO L290 TraceCheckUtils]: 11: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,630 INFO L290 TraceCheckUtils]: 12: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:50,630 INFO L290 TraceCheckUtils]: 13: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:50,631 INFO L290 TraceCheckUtils]: 14: Hoare triple {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:50,631 INFO L290 TraceCheckUtils]: 15: Hoare triple {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:50,631 INFO L290 TraceCheckUtils]: 16: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:50,632 INFO L290 TraceCheckUtils]: 17: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66628#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 9))} is VALID [2022-04-27 22:27:50,632 INFO L290 TraceCheckUtils]: 18: Hoare triple {66628#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66629#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 9))} is VALID [2022-04-27 22:27:50,632 INFO L290 TraceCheckUtils]: 19: Hoare triple {66629#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66630#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} is VALID [2022-04-27 22:27:50,633 INFO L290 TraceCheckUtils]: 20: Hoare triple {66630#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:50,633 INFO L290 TraceCheckUtils]: 21: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:50,633 INFO L290 TraceCheckUtils]: 22: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:50,634 INFO L290 TraceCheckUtils]: 23: Hoare triple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:50,634 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {66578#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {66600#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:27:50,634 INFO L290 TraceCheckUtils]: 25: Hoare triple {66600#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} is VALID [2022-04-27 22:27:50,634 INFO L272 TraceCheckUtils]: 26: Hoare triple {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:50,635 INFO L290 TraceCheckUtils]: 27: Hoare triple {66578#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,635 INFO L290 TraceCheckUtils]: 28: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,635 INFO L290 TraceCheckUtils]: 29: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,636 INFO L290 TraceCheckUtils]: 30: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,636 INFO L290 TraceCheckUtils]: 31: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:50,636 INFO L290 TraceCheckUtils]: 32: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:50,637 INFO L290 TraceCheckUtils]: 33: Hoare triple {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:50,637 INFO L290 TraceCheckUtils]: 34: Hoare triple {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:50,637 INFO L290 TraceCheckUtils]: 35: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:50,638 INFO L290 TraceCheckUtils]: 36: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66637#(and (<= 9 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 9))} is VALID [2022-04-27 22:27:50,638 INFO L290 TraceCheckUtils]: 37: Hoare triple {66637#(and (<= 9 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 9))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66638#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 9) (<= 9 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:27:50,638 INFO L290 TraceCheckUtils]: 38: Hoare triple {66638#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 9) (<= 9 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66639#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:27:50,639 INFO L290 TraceCheckUtils]: 39: Hoare triple {66639#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:50,639 INFO L290 TraceCheckUtils]: 40: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:50,639 INFO L290 TraceCheckUtils]: 41: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:50,640 INFO L290 TraceCheckUtils]: 42: Hoare triple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:50,640 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {66619#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:50,641 INFO L290 TraceCheckUtils]: 44: Hoare triple {66619#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {66620#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:27:50,641 INFO L272 TraceCheckUtils]: 45: Hoare triple {66620#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {66621#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:27:50,641 INFO L290 TraceCheckUtils]: 46: Hoare triple {66621#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {66622#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:27:50,641 INFO L290 TraceCheckUtils]: 47: Hoare triple {66622#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {66579#false} is VALID [2022-04-27 22:27:50,641 INFO L290 TraceCheckUtils]: 48: Hoare triple {66579#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66579#false} is VALID [2022-04-27 22:27:50,642 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:27:50,642 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:27:50,642 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [647262152] [2022-04-27 22:27:50,642 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [647262152] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:27:50,642 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [865188611] [2022-04-27 22:27:50,642 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:27:50,642 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:50,642 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:27:50,643 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:27:50,644 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Waiting until timeout for monitored process [2022-04-27 22:27:50,713 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 22:27:50,713 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:27:50,714 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 47 conjunts are in the unsatisfiable core [2022-04-27 22:27:50,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:50,722 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:27:51,217 INFO L272 TraceCheckUtils]: 0: Hoare triple {66578#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {66578#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {66578#true} is VALID [2022-04-27 22:27:51,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {66578#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,218 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66578#true} {66578#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {66578#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {66578#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:51,218 INFO L290 TraceCheckUtils]: 6: Hoare triple {66578#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,218 INFO L272 TraceCheckUtils]: 7: Hoare triple {66578#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:51,218 INFO L290 TraceCheckUtils]: 8: Hoare triple {66578#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,219 INFO L290 TraceCheckUtils]: 10: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,219 INFO L290 TraceCheckUtils]: 11: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,219 INFO L290 TraceCheckUtils]: 12: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,220 INFO L290 TraceCheckUtils]: 13: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:51,220 INFO L290 TraceCheckUtils]: 14: Hoare triple {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:51,221 INFO L290 TraceCheckUtils]: 15: Hoare triple {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:51,221 INFO L290 TraceCheckUtils]: 16: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:51,221 INFO L290 TraceCheckUtils]: 17: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66696#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:51,222 INFO L290 TraceCheckUtils]: 18: Hoare triple {66696#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66700#(and (= correct_version_~j~0 correct_version_~y~0) (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:51,222 INFO L290 TraceCheckUtils]: 19: Hoare triple {66700#(and (= correct_version_~j~0 correct_version_~y~0) (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66704#(and (<= 3 correct_version_~j~0) (= correct_version_~j~0 (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:51,222 INFO L290 TraceCheckUtils]: 20: Hoare triple {66704#(and (<= 3 correct_version_~j~0) (= correct_version_~j~0 (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:51,223 INFO L290 TraceCheckUtils]: 21: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:51,223 INFO L290 TraceCheckUtils]: 22: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:51,223 INFO L290 TraceCheckUtils]: 23: Hoare triple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:51,224 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {66578#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {66600#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:27:51,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {66600#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} is VALID [2022-04-27 22:27:51,224 INFO L272 TraceCheckUtils]: 26: Hoare triple {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:51,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {66578#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,225 INFO L290 TraceCheckUtils]: 28: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,225 INFO L290 TraceCheckUtils]: 29: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,225 INFO L290 TraceCheckUtils]: 30: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,226 INFO L290 TraceCheckUtils]: 31: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,226 INFO L290 TraceCheckUtils]: 32: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:51,226 INFO L290 TraceCheckUtils]: 33: Hoare triple {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:51,227 INFO L290 TraceCheckUtils]: 34: Hoare triple {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:51,227 INFO L290 TraceCheckUtils]: 35: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:51,227 INFO L290 TraceCheckUtils]: 36: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66756#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:51,228 INFO L290 TraceCheckUtils]: 37: Hoare triple {66756#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66760#(and (<= student_version_~j~1 3) (= student_version_~j~1 student_version_~y~1) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:51,228 INFO L290 TraceCheckUtils]: 38: Hoare triple {66760#(and (<= student_version_~j~1 3) (= student_version_~j~1 student_version_~y~1) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66764#(and (<= student_version_~j~1 3) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) student_version_~j~1) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:51,229 INFO L290 TraceCheckUtils]: 39: Hoare triple {66764#(and (<= student_version_~j~1 3) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) student_version_~j~1) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:51,229 INFO L290 TraceCheckUtils]: 40: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:51,229 INFO L290 TraceCheckUtils]: 41: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:51,229 INFO L290 TraceCheckUtils]: 42: Hoare triple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:51,230 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {66780#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= |main_#t~ret9| 9) (<= 9 |main_#t~ret9|))} is VALID [2022-04-27 22:27:51,230 INFO L290 TraceCheckUtils]: 44: Hoare triple {66780#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= |main_#t~ret9| 9) (<= 9 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {66784#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= main_~n_stones2~0 9) (<= 9 main_~n_stones2~0))} is VALID [2022-04-27 22:27:51,231 INFO L272 TraceCheckUtils]: 45: Hoare triple {66784#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= main_~n_stones2~0 9) (<= 9 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {66788#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:27:51,231 INFO L290 TraceCheckUtils]: 46: Hoare triple {66788#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {66792#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:27:51,231 INFO L290 TraceCheckUtils]: 47: Hoare triple {66792#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {66579#false} is VALID [2022-04-27 22:27:51,231 INFO L290 TraceCheckUtils]: 48: Hoare triple {66579#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66579#false} is VALID [2022-04-27 22:27:51,231 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:27:51,231 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:27:51,574 INFO L290 TraceCheckUtils]: 48: Hoare triple {66579#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66579#false} is VALID [2022-04-27 22:27:51,574 INFO L290 TraceCheckUtils]: 47: Hoare triple {66792#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {66579#false} is VALID [2022-04-27 22:27:51,575 INFO L290 TraceCheckUtils]: 46: Hoare triple {66788#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {66792#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:27:51,575 INFO L272 TraceCheckUtils]: 45: Hoare triple {66620#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {66788#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:27:51,576 INFO L290 TraceCheckUtils]: 44: Hoare triple {66619#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {66620#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:27:51,576 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {66619#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:51,577 INFO L290 TraceCheckUtils]: 42: Hoare triple {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:51,577 INFO L290 TraceCheckUtils]: 41: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {66641#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:27:51,577 INFO L290 TraceCheckUtils]: 40: Hoare triple {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:51,578 INFO L290 TraceCheckUtils]: 39: Hoare triple {66639#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66640#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:27:51,578 INFO L290 TraceCheckUtils]: 38: Hoare triple {66638#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 9) (<= 9 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66639#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:27:51,579 INFO L290 TraceCheckUtils]: 37: Hoare triple {66637#(and (<= 9 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 9))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66638#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 9) (<= 9 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:27:51,579 INFO L290 TraceCheckUtils]: 36: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {66637#(and (<= 9 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 9))} is VALID [2022-04-27 22:27:51,579 INFO L290 TraceCheckUtils]: 35: Hoare triple {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:51,580 INFO L290 TraceCheckUtils]: 34: Hoare triple {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66636#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:27:51,580 INFO L290 TraceCheckUtils]: 33: Hoare triple {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66635#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:27:51,581 INFO L290 TraceCheckUtils]: 32: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {66634#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:51,581 INFO L290 TraceCheckUtils]: 31: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,581 INFO L290 TraceCheckUtils]: 30: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,581 INFO L290 TraceCheckUtils]: 29: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,582 INFO L290 TraceCheckUtils]: 28: Hoare triple {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,582 INFO L290 TraceCheckUtils]: 27: Hoare triple {66578#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {66633#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:51,582 INFO L272 TraceCheckUtils]: 26: Hoare triple {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:51,582 INFO L290 TraceCheckUtils]: 25: Hoare triple {66600#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {66601#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} is VALID [2022-04-27 22:27:51,583 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {66578#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {66600#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:27:51,583 INFO L290 TraceCheckUtils]: 23: Hoare triple {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:51,584 INFO L290 TraceCheckUtils]: 22: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {66632#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:27:51,584 INFO L290 TraceCheckUtils]: 21: Hoare triple {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:51,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {66630#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66631#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:27:51,585 INFO L290 TraceCheckUtils]: 19: Hoare triple {66629#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66630#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} is VALID [2022-04-27 22:27:51,585 INFO L290 TraceCheckUtils]: 18: Hoare triple {66628#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66629#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 9))} is VALID [2022-04-27 22:27:51,586 INFO L290 TraceCheckUtils]: 17: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {66628#(and (<= 9 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 9))} is VALID [2022-04-27 22:27:51,586 INFO L290 TraceCheckUtils]: 16: Hoare triple {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:51,586 INFO L290 TraceCheckUtils]: 15: Hoare triple {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66627#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:27:51,587 INFO L290 TraceCheckUtils]: 14: Hoare triple {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66626#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:27:51,587 INFO L290 TraceCheckUtils]: 13: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {66625#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:51,587 INFO L290 TraceCheckUtils]: 12: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,588 INFO L290 TraceCheckUtils]: 11: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,588 INFO L290 TraceCheckUtils]: 10: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,588 INFO L290 TraceCheckUtils]: 9: Hoare triple {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,588 INFO L290 TraceCheckUtils]: 8: Hoare triple {66578#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {66624#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:51,589 INFO L272 TraceCheckUtils]: 7: Hoare triple {66578#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L290 TraceCheckUtils]: 6: Hoare triple {66578#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {66578#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L272 TraceCheckUtils]: 4: Hoare triple {66578#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66578#true} {66578#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {66578#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {66578#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L272 TraceCheckUtils]: 0: Hoare triple {66578#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66578#true} is VALID [2022-04-27 22:27:51,589 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:27:51,589 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [865188611] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:27:51,589 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:27:51,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 26, 26] total 37 [2022-04-27 22:27:51,590 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1563724199] [2022-04-27 22:27:51,590 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:27:51,590 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:27:51,590 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:27:51,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:51,618 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:27:51,618 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-04-27 22:27:51,618 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:27:51,619 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-04-27 22:27:51,619 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=89, Invalid=1243, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:27:51,619 INFO L87 Difference]: Start difference. First operand 382 states and 436 transitions. Second operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:55,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:55,767 INFO L93 Difference]: Finished difference Result 388 states and 441 transitions. [2022-04-27 22:27:55,767 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-27 22:27:55,767 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:27:55,767 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:27:55,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:55,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 110 transitions. [2022-04-27 22:27:55,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:55,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 110 transitions. [2022-04-27 22:27:55,769 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 110 transitions. [2022-04-27 22:27:55,879 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-27 22:27:55,886 INFO L225 Difference]: With dead ends: 388 [2022-04-27 22:27:55,886 INFO L226 Difference]: Without dead ends: 364 [2022-04-27 22:27:55,887 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 84 SyntacticMatches, 9 SemanticMatches, 60 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 611 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=233, Invalid=3549, Unknown=0, NotChecked=0, Total=3782 [2022-04-27 22:27:55,887 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 90 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 2276 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 92 SdHoareTripleChecker+Valid, 196 SdHoareTripleChecker+Invalid, 2308 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 2276 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:27:55,888 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [92 Valid, 196 Invalid, 2308 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 2276 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-04-27 22:27:55,888 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 364 states. [2022-04-27 22:27:58,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 364 to 364. [2022-04-27 22:27:58,533 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:27:58,534 INFO L82 GeneralOperation]: Start isEquivalent. First operand 364 states. Second operand has 364 states, 313 states have (on average 1.1661341853035143) internal successors, (365), 341 states have internal predecessors, (365), 19 states have call successors, (19), 5 states have call predecessors, (19), 31 states have return successors, (32), 17 states have call predecessors, (32), 17 states have call successors, (32) [2022-04-27 22:27:58,534 INFO L74 IsIncluded]: Start isIncluded. First operand 364 states. Second operand has 364 states, 313 states have (on average 1.1661341853035143) internal successors, (365), 341 states have internal predecessors, (365), 19 states have call successors, (19), 5 states have call predecessors, (19), 31 states have return successors, (32), 17 states have call predecessors, (32), 17 states have call successors, (32) [2022-04-27 22:27:58,534 INFO L87 Difference]: Start difference. First operand 364 states. Second operand has 364 states, 313 states have (on average 1.1661341853035143) internal successors, (365), 341 states have internal predecessors, (365), 19 states have call successors, (19), 5 states have call predecessors, (19), 31 states have return successors, (32), 17 states have call predecessors, (32), 17 states have call successors, (32) [2022-04-27 22:27:58,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:58,540 INFO L93 Difference]: Finished difference Result 364 states and 416 transitions. [2022-04-27 22:27:58,540 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 416 transitions. [2022-04-27 22:27:58,540 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:58,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:58,541 INFO L74 IsIncluded]: Start isIncluded. First operand has 364 states, 313 states have (on average 1.1661341853035143) internal successors, (365), 341 states have internal predecessors, (365), 19 states have call successors, (19), 5 states have call predecessors, (19), 31 states have return successors, (32), 17 states have call predecessors, (32), 17 states have call successors, (32) Second operand 364 states. [2022-04-27 22:27:58,541 INFO L87 Difference]: Start difference. First operand has 364 states, 313 states have (on average 1.1661341853035143) internal successors, (365), 341 states have internal predecessors, (365), 19 states have call successors, (19), 5 states have call predecessors, (19), 31 states have return successors, (32), 17 states have call predecessors, (32), 17 states have call successors, (32) Second operand 364 states. [2022-04-27 22:27:58,546 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:27:58,546 INFO L93 Difference]: Finished difference Result 364 states and 416 transitions. [2022-04-27 22:27:58,546 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 416 transitions. [2022-04-27 22:27:58,547 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:27:58,547 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:27:58,547 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:27:58,547 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:27:58,548 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 364 states, 313 states have (on average 1.1661341853035143) internal successors, (365), 341 states have internal predecessors, (365), 19 states have call successors, (19), 5 states have call predecessors, (19), 31 states have return successors, (32), 17 states have call predecessors, (32), 17 states have call successors, (32) [2022-04-27 22:27:58,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 364 states to 364 states and 416 transitions. [2022-04-27 22:27:58,554 INFO L78 Accepts]: Start accepts. Automaton has 364 states and 416 transitions. Word has length 49 [2022-04-27 22:27:58,554 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:27:58,554 INFO L495 AbstractCegarLoop]: Abstraction has 364 states and 416 transitions. [2022-04-27 22:27:58,554 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:27:58,554 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 416 transitions. [2022-04-27 22:27:58,556 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 22:27:58,556 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:27:58,556 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:27:58,572 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Ended with exit code 0 [2022-04-27 22:27:58,772 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 46 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable54 [2022-04-27 22:27:58,772 INFO L420 AbstractCegarLoop]: === Iteration 56 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:27:58,772 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:27:58,772 INFO L85 PathProgramCache]: Analyzing trace with hash 623868167, now seen corresponding path program 46 times [2022-04-27 22:27:58,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:27:58,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [512129813] [2022-04-27 22:27:58,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:27:58,772 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:27:58,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:58,851 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:27:58,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:58,854 INFO L290 TraceCheckUtils]: 0: Hoare triple {68844#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {68799#true} is VALID [2022-04-27 22:27:58,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {68799#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:27:58,854 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {68799#true} {68799#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:27:58,854 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:27:58,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:58,982 INFO L290 TraceCheckUtils]: 0: Hoare triple {68799#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:58,982 INFO L290 TraceCheckUtils]: 1: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:58,983 INFO L290 TraceCheckUtils]: 2: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:58,983 INFO L290 TraceCheckUtils]: 3: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:58,983 INFO L290 TraceCheckUtils]: 4: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:58,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:58,984 INFO L290 TraceCheckUtils]: 6: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:58,985 INFO L290 TraceCheckUtils]: 7: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:58,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68847#(and (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 4))} is VALID [2022-04-27 22:27:58,985 INFO L290 TraceCheckUtils]: 9: Hoare triple {68847#(and (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68848#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:27:58,986 INFO L290 TraceCheckUtils]: 10: Hoare triple {68848#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68849#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:27:58,986 INFO L290 TraceCheckUtils]: 11: Hoare triple {68849#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68850#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:27:58,987 INFO L290 TraceCheckUtils]: 12: Hoare triple {68850#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:27:58,987 INFO L290 TraceCheckUtils]: 13: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:27:58,988 INFO L290 TraceCheckUtils]: 14: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:27:58,988 INFO L290 TraceCheckUtils]: 15: Hoare triple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:27:58,989 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {68799#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {68821#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:27:58,993 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:27:58,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:59,159 INFO L290 TraceCheckUtils]: 0: Hoare triple {68799#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,160 INFO L290 TraceCheckUtils]: 2: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,161 INFO L290 TraceCheckUtils]: 3: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,161 INFO L290 TraceCheckUtils]: 4: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,161 INFO L290 TraceCheckUtils]: 5: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,162 INFO L290 TraceCheckUtils]: 6: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:59,162 INFO L290 TraceCheckUtils]: 7: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:59,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68855#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 4) (<= 4 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:27:59,163 INFO L290 TraceCheckUtils]: 9: Hoare triple {68855#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 4) (<= 4 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68856#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 4) (<= 4 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:27:59,163 INFO L290 TraceCheckUtils]: 10: Hoare triple {68856#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 4) (<= 4 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68857#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:27:59,164 INFO L290 TraceCheckUtils]: 11: Hoare triple {68857#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68858#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:27:59,164 INFO L290 TraceCheckUtils]: 12: Hoare triple {68858#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:27:59,165 INFO L290 TraceCheckUtils]: 13: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:27:59,165 INFO L290 TraceCheckUtils]: 14: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:27:59,165 INFO L290 TraceCheckUtils]: 15: Hoare triple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:27:59,166 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {68840#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:59,167 INFO L272 TraceCheckUtils]: 0: Hoare triple {68799#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68844#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:27:59,167 INFO L290 TraceCheckUtils]: 1: Hoare triple {68844#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {68799#true} is VALID [2022-04-27 22:27:59,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {68799#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:27:59,167 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68799#true} {68799#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:27:59,167 INFO L272 TraceCheckUtils]: 4: Hoare triple {68799#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:27:59,167 INFO L290 TraceCheckUtils]: 5: Hoare triple {68799#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {68799#true} is VALID [2022-04-27 22:27:59,167 INFO L290 TraceCheckUtils]: 6: Hoare triple {68799#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:27:59,167 INFO L272 TraceCheckUtils]: 7: Hoare triple {68799#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {68799#true} is VALID [2022-04-27 22:27:59,168 INFO L290 TraceCheckUtils]: 8: Hoare triple {68799#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:59,168 INFO L290 TraceCheckUtils]: 9: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:59,168 INFO L290 TraceCheckUtils]: 10: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:59,169 INFO L290 TraceCheckUtils]: 11: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:59,169 INFO L290 TraceCheckUtils]: 12: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:59,169 INFO L290 TraceCheckUtils]: 13: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:27:59,170 INFO L290 TraceCheckUtils]: 14: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:59,170 INFO L290 TraceCheckUtils]: 15: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:27:59,170 INFO L290 TraceCheckUtils]: 16: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68847#(and (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 4))} is VALID [2022-04-27 22:27:59,171 INFO L290 TraceCheckUtils]: 17: Hoare triple {68847#(and (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68848#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:27:59,172 INFO L290 TraceCheckUtils]: 18: Hoare triple {68848#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68849#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:27:59,172 INFO L290 TraceCheckUtils]: 19: Hoare triple {68849#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68850#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:27:59,173 INFO L290 TraceCheckUtils]: 20: Hoare triple {68850#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:27:59,173 INFO L290 TraceCheckUtils]: 21: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:27:59,173 INFO L290 TraceCheckUtils]: 22: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:27:59,174 INFO L290 TraceCheckUtils]: 23: Hoare triple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:27:59,174 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {68799#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {68821#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:27:59,175 INFO L290 TraceCheckUtils]: 25: Hoare triple {68821#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:27:59,175 INFO L272 TraceCheckUtils]: 26: Hoare triple {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {68799#true} is VALID [2022-04-27 22:27:59,175 INFO L290 TraceCheckUtils]: 27: Hoare triple {68799#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,175 INFO L290 TraceCheckUtils]: 28: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,176 INFO L290 TraceCheckUtils]: 29: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,176 INFO L290 TraceCheckUtils]: 31: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,177 INFO L290 TraceCheckUtils]: 32: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:27:59,177 INFO L290 TraceCheckUtils]: 33: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:59,178 INFO L290 TraceCheckUtils]: 34: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:27:59,178 INFO L290 TraceCheckUtils]: 35: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68855#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 4) (<= 4 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:27:59,178 INFO L290 TraceCheckUtils]: 36: Hoare triple {68855#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 4) (<= 4 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68856#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 4) (<= 4 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:27:59,179 INFO L290 TraceCheckUtils]: 37: Hoare triple {68856#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 4) (<= 4 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68857#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:27:59,179 INFO L290 TraceCheckUtils]: 38: Hoare triple {68857#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68858#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:27:59,180 INFO L290 TraceCheckUtils]: 39: Hoare triple {68858#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:27:59,180 INFO L290 TraceCheckUtils]: 40: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:27:59,181 INFO L290 TraceCheckUtils]: 41: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:27:59,181 INFO L290 TraceCheckUtils]: 42: Hoare triple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:27:59,182 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {68840#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:27:59,182 INFO L290 TraceCheckUtils]: 44: Hoare triple {68840#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {68841#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:27:59,183 INFO L272 TraceCheckUtils]: 45: Hoare triple {68841#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {68842#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:27:59,183 INFO L290 TraceCheckUtils]: 46: Hoare triple {68842#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {68843#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:27:59,183 INFO L290 TraceCheckUtils]: 47: Hoare triple {68843#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {68800#false} is VALID [2022-04-27 22:27:59,184 INFO L290 TraceCheckUtils]: 48: Hoare triple {68800#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68800#false} is VALID [2022-04-27 22:27:59,184 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:27:59,184 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:27:59,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [512129813] [2022-04-27 22:27:59,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [512129813] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:27:59,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [911516774] [2022-04-27 22:27:59,184 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:27:59,184 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:27:59,184 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:27:59,185 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:27:59,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Waiting until timeout for monitored process [2022-04-27 22:27:59,259 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:27:59,259 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:27:59,266 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-27 22:27:59,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:27:59,275 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:28:00,022 INFO L272 TraceCheckUtils]: 0: Hoare triple {68799#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,022 INFO L290 TraceCheckUtils]: 1: Hoare triple {68799#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {68799#true} is VALID [2022-04-27 22:28:00,022 INFO L290 TraceCheckUtils]: 2: Hoare triple {68799#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,022 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68799#true} {68799#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,022 INFO L272 TraceCheckUtils]: 4: Hoare triple {68799#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,022 INFO L290 TraceCheckUtils]: 5: Hoare triple {68799#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {68799#true} is VALID [2022-04-27 22:28:00,022 INFO L290 TraceCheckUtils]: 6: Hoare triple {68799#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,022 INFO L272 TraceCheckUtils]: 7: Hoare triple {68799#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {68799#true} is VALID [2022-04-27 22:28:00,023 INFO L290 TraceCheckUtils]: 8: Hoare triple {68799#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,023 INFO L290 TraceCheckUtils]: 10: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,024 INFO L290 TraceCheckUtils]: 11: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,024 INFO L290 TraceCheckUtils]: 12: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,025 INFO L290 TraceCheckUtils]: 13: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,025 INFO L290 TraceCheckUtils]: 14: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,025 INFO L290 TraceCheckUtils]: 15: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,026 INFO L290 TraceCheckUtils]: 16: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68912#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,026 INFO L290 TraceCheckUtils]: 17: Hoare triple {68912#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68916#(and (<= 1 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,027 INFO L290 TraceCheckUtils]: 18: Hoare triple {68916#(and (<= 1 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68920#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,027 INFO L290 TraceCheckUtils]: 19: Hoare triple {68920#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68924#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 3)) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,028 INFO L290 TraceCheckUtils]: 20: Hoare triple {68924#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 3)) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:28:00,028 INFO L290 TraceCheckUtils]: 21: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:28:00,028 INFO L290 TraceCheckUtils]: 22: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:28:00,029 INFO L290 TraceCheckUtils]: 23: Hoare triple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:28:00,030 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {68799#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {68821#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:28:00,030 INFO L290 TraceCheckUtils]: 25: Hoare triple {68821#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:28:00,030 INFO L272 TraceCheckUtils]: 26: Hoare triple {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {68799#true} is VALID [2022-04-27 22:28:00,030 INFO L290 TraceCheckUtils]: 27: Hoare triple {68799#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,031 INFO L290 TraceCheckUtils]: 28: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,031 INFO L290 TraceCheckUtils]: 29: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,032 INFO L290 TraceCheckUtils]: 30: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,032 INFO L290 TraceCheckUtils]: 31: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,032 INFO L290 TraceCheckUtils]: 32: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,033 INFO L290 TraceCheckUtils]: 33: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:00,033 INFO L290 TraceCheckUtils]: 34: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:00,033 INFO L290 TraceCheckUtils]: 35: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68973#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:00,034 INFO L290 TraceCheckUtils]: 36: Hoare triple {68973#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68977#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:28:00,034 INFO L290 TraceCheckUtils]: 37: Hoare triple {68977#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68981#(and (<= student_version_~j~1 1) (= (+ student_version_~y~1 (* (- 2) student_version_~j~1)) 0) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:00,035 INFO L290 TraceCheckUtils]: 38: Hoare triple {68981#(and (<= student_version_~j~1 1) (= (+ student_version_~y~1 (* (- 2) student_version_~j~1)) 0) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68985#(and (<= student_version_~j~1 1) (= student_version_~y~1 (* 3 student_version_~j~1)) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:00,036 INFO L290 TraceCheckUtils]: 39: Hoare triple {68985#(and (<= student_version_~j~1 1) (= student_version_~y~1 (* 3 student_version_~j~1)) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:28:00,036 INFO L290 TraceCheckUtils]: 40: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:28:00,036 INFO L290 TraceCheckUtils]: 41: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:28:00,037 INFO L290 TraceCheckUtils]: 42: Hoare triple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:28:00,037 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {69001#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0) (<= |main_#t~ret9| 4) (<= 4 |main_#t~ret9|))} is VALID [2022-04-27 22:28:00,038 INFO L290 TraceCheckUtils]: 44: Hoare triple {69001#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0) (<= |main_#t~ret9| 4) (<= 4 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {69005#(and (<= main_~n_stones1~0 4) (<= main_~n_stones2~0 4) (<= 4 main_~n_stones1~0) (<= 4 main_~n_stones2~0))} is VALID [2022-04-27 22:28:00,038 INFO L272 TraceCheckUtils]: 45: Hoare triple {69005#(and (<= main_~n_stones1~0 4) (<= main_~n_stones2~0 4) (<= 4 main_~n_stones1~0) (<= 4 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {69009#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:28:00,039 INFO L290 TraceCheckUtils]: 46: Hoare triple {69009#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {69013#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:28:00,039 INFO L290 TraceCheckUtils]: 47: Hoare triple {69013#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {68800#false} is VALID [2022-04-27 22:28:00,039 INFO L290 TraceCheckUtils]: 48: Hoare triple {68800#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68800#false} is VALID [2022-04-27 22:28:00,039 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:28:00,039 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:28:00,516 INFO L290 TraceCheckUtils]: 48: Hoare triple {68800#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68800#false} is VALID [2022-04-27 22:28:00,517 INFO L290 TraceCheckUtils]: 47: Hoare triple {69013#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {68800#false} is VALID [2022-04-27 22:28:00,517 INFO L290 TraceCheckUtils]: 46: Hoare triple {69009#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {69013#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:28:00,518 INFO L272 TraceCheckUtils]: 45: Hoare triple {68841#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {69009#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:28:00,518 INFO L290 TraceCheckUtils]: 44: Hoare triple {68840#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {68841#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:28:00,519 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {68840#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:28:00,519 INFO L290 TraceCheckUtils]: 42: Hoare triple {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:28:00,520 INFO L290 TraceCheckUtils]: 41: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {68860#(and (<= |student_version_#res| 4) (<= 4 |student_version_#res|))} is VALID [2022-04-27 22:28:00,520 INFO L290 TraceCheckUtils]: 40: Hoare triple {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:28:00,521 INFO L290 TraceCheckUtils]: 39: Hoare triple {68858#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68859#(and (<= student_version_~y~1 4) (<= 4 student_version_~y~1))} is VALID [2022-04-27 22:28:00,521 INFO L290 TraceCheckUtils]: 38: Hoare triple {68857#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68858#(and (<= 4 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 4))} is VALID [2022-04-27 22:28:00,522 INFO L290 TraceCheckUtils]: 37: Hoare triple {68856#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 4) (<= 4 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68857#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 4) (<= 4 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:28:00,522 INFO L290 TraceCheckUtils]: 36: Hoare triple {68855#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 4) (<= 4 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68856#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 4) (<= 4 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:28:00,522 INFO L290 TraceCheckUtils]: 35: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {68855#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 4) (<= 4 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:28:00,523 INFO L290 TraceCheckUtils]: 34: Hoare triple {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:00,523 INFO L290 TraceCheckUtils]: 33: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {68854#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:00,524 INFO L290 TraceCheckUtils]: 32: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,524 INFO L290 TraceCheckUtils]: 31: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,525 INFO L290 TraceCheckUtils]: 29: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,525 INFO L290 TraceCheckUtils]: 28: Hoare triple {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,525 INFO L290 TraceCheckUtils]: 27: Hoare triple {68799#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {68853#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:00,526 INFO L272 TraceCheckUtils]: 26: Hoare triple {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {68799#true} is VALID [2022-04-27 22:28:00,526 INFO L290 TraceCheckUtils]: 25: Hoare triple {68821#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {68822#(and (<= main_~n_stones1~0 4) (<= 4 main_~n_stones1~0))} is VALID [2022-04-27 22:28:00,527 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} {68799#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {68821#(and (<= 4 |main_#t~ret8|) (<= |main_#t~ret8| 4))} is VALID [2022-04-27 22:28:00,527 INFO L290 TraceCheckUtils]: 23: Hoare triple {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:28:00,527 INFO L290 TraceCheckUtils]: 22: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {68852#(and (<= |correct_version_#res| 4) (<= 4 |correct_version_#res|))} is VALID [2022-04-27 22:28:00,528 INFO L290 TraceCheckUtils]: 21: Hoare triple {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:28:00,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {68850#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68851#(and (<= 4 correct_version_~y~0) (<= correct_version_~y~0 4))} is VALID [2022-04-27 22:28:00,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {68849#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68850#(and (<= 4 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 4))} is VALID [2022-04-27 22:28:00,529 INFO L290 TraceCheckUtils]: 18: Hoare triple {68848#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68849#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:28:00,530 INFO L290 TraceCheckUtils]: 17: Hoare triple {68847#(and (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68848#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 4) (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:28:00,530 INFO L290 TraceCheckUtils]: 16: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {68847#(and (<= 4 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 4))} is VALID [2022-04-27 22:28:00,530 INFO L290 TraceCheckUtils]: 15: Hoare triple {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,531 INFO L290 TraceCheckUtils]: 14: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {68846#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:00,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,531 INFO L290 TraceCheckUtils]: 12: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,532 INFO L290 TraceCheckUtils]: 11: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,532 INFO L290 TraceCheckUtils]: 10: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,533 INFO L290 TraceCheckUtils]: 9: Hoare triple {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,533 INFO L290 TraceCheckUtils]: 8: Hoare triple {68799#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {68845#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:00,533 INFO L272 TraceCheckUtils]: 7: Hoare triple {68799#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {68799#true} is VALID [2022-04-27 22:28:00,533 INFO L290 TraceCheckUtils]: 6: Hoare triple {68799#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,533 INFO L290 TraceCheckUtils]: 5: Hoare triple {68799#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {68799#true} is VALID [2022-04-27 22:28:00,533 INFO L272 TraceCheckUtils]: 4: Hoare triple {68799#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,533 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68799#true} {68799#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,533 INFO L290 TraceCheckUtils]: 2: Hoare triple {68799#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,533 INFO L290 TraceCheckUtils]: 1: Hoare triple {68799#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {68799#true} is VALID [2022-04-27 22:28:00,534 INFO L272 TraceCheckUtils]: 0: Hoare triple {68799#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68799#true} is VALID [2022-04-27 22:28:00,534 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:28:00,534 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [911516774] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:28:00,534 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:28:00,534 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 24, 24] total 37 [2022-04-27 22:28:00,534 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1011129160] [2022-04-27 22:28:00,534 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:28:00,534 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:28:00,535 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:28:00,535 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:00,574 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:00,574 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-04-27 22:28:00,574 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:28:00,574 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-04-27 22:28:00,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=1239, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 22:28:00,575 INFO L87 Difference]: Start difference. First operand 364 states and 416 transitions. Second operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:04,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:04,475 INFO L93 Difference]: Finished difference Result 382 states and 437 transitions. [2022-04-27 22:28:04,475 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 22:28:04,475 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 49 [2022-04-27 22:28:04,475 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:28:04,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:04,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 84 transitions. [2022-04-27 22:28:04,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:04,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 84 transitions. [2022-04-27 22:28:04,476 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 84 transitions. [2022-04-27 22:28:04,517 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:04,524 INFO L225 Difference]: With dead ends: 382 [2022-04-27 22:28:04,524 INFO L226 Difference]: Without dead ends: 376 [2022-04-27 22:28:04,526 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 82 SyntacticMatches, 9 SemanticMatches, 58 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 616 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=235, Invalid=3305, Unknown=0, NotChecked=0, Total=3540 [2022-04-27 22:28:04,526 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 55 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 1320 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 1352 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 1320 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:28:04,526 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [56 Valid, 161 Invalid, 1352 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 1320 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 22:28:04,526 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 376 states. [2022-04-27 22:28:05,909 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 376 to 374. [2022-04-27 22:28:05,913 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:28:05,914 INFO L82 GeneralOperation]: Start isEquivalent. First operand 376 states. Second operand has 374 states, 320 states have (on average 1.16875) internal successors, (374), 350 states have internal predecessors, (374), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (35), 18 states have call predecessors, (35), 18 states have call successors, (35) [2022-04-27 22:28:05,914 INFO L74 IsIncluded]: Start isIncluded. First operand 376 states. Second operand has 374 states, 320 states have (on average 1.16875) internal successors, (374), 350 states have internal predecessors, (374), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (35), 18 states have call predecessors, (35), 18 states have call successors, (35) [2022-04-27 22:28:05,914 INFO L87 Difference]: Start difference. First operand 376 states. Second operand has 374 states, 320 states have (on average 1.16875) internal successors, (374), 350 states have internal predecessors, (374), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (35), 18 states have call predecessors, (35), 18 states have call successors, (35) [2022-04-27 22:28:05,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:05,920 INFO L93 Difference]: Finished difference Result 376 states and 431 transitions. [2022-04-27 22:28:05,920 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 431 transitions. [2022-04-27 22:28:05,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:05,924 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:05,924 INFO L74 IsIncluded]: Start isIncluded. First operand has 374 states, 320 states have (on average 1.16875) internal successors, (374), 350 states have internal predecessors, (374), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (35), 18 states have call predecessors, (35), 18 states have call successors, (35) Second operand 376 states. [2022-04-27 22:28:05,924 INFO L87 Difference]: Start difference. First operand has 374 states, 320 states have (on average 1.16875) internal successors, (374), 350 states have internal predecessors, (374), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (35), 18 states have call predecessors, (35), 18 states have call successors, (35) Second operand 376 states. [2022-04-27 22:28:05,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:05,931 INFO L93 Difference]: Finished difference Result 376 states and 431 transitions. [2022-04-27 22:28:05,931 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 431 transitions. [2022-04-27 22:28:05,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:05,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:05,932 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:28:05,932 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:28:05,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 374 states, 320 states have (on average 1.16875) internal successors, (374), 350 states have internal predecessors, (374), 20 states have call successors, (20), 5 states have call predecessors, (20), 33 states have return successors, (35), 18 states have call predecessors, (35), 18 states have call successors, (35) [2022-04-27 22:28:05,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 374 states to 374 states and 429 transitions. [2022-04-27 22:28:05,940 INFO L78 Accepts]: Start accepts. Automaton has 374 states and 429 transitions. Word has length 49 [2022-04-27 22:28:05,940 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:28:05,940 INFO L495 AbstractCegarLoop]: Abstraction has 374 states and 429 transitions. [2022-04-27 22:28:05,940 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 34 states have (on average 1.4411764705882353) internal successors, (49), 31 states have internal predecessors, (49), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:05,940 INFO L276 IsEmpty]: Start isEmpty. Operand 374 states and 429 transitions. [2022-04-27 22:28:05,942 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 22:28:05,942 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:28:05,942 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 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-27 22:28:05,961 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Forceful destruction successful, exit code 0 [2022-04-27 22:28:06,159 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable55,47 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:28:06,159 INFO L420 AbstractCegarLoop]: === Iteration 57 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:28:06,159 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:28:06,159 INFO L85 PathProgramCache]: Analyzing trace with hash -1933296099, now seen corresponding path program 47 times [2022-04-27 22:28:06,159 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:28:06,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1073147010] [2022-04-27 22:28:06,159 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:28:06,159 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:28:06,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:06,206 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:28:06,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:06,208 INFO L290 TraceCheckUtils]: 0: Hoare triple {71083#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {71042#true} is VALID [2022-04-27 22:28:06,208 INFO L290 TraceCheckUtils]: 1: Hoare triple {71042#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:06,208 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {71042#true} {71042#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:06,208 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:28:06,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:06,283 INFO L290 TraceCheckUtils]: 0: Hoare triple {71042#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:28:06,284 INFO L290 TraceCheckUtils]: 1: Hoare triple {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:28:06,284 INFO L290 TraceCheckUtils]: 2: Hoare triple {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:28:06,285 INFO L290 TraceCheckUtils]: 3: Hoare triple {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71085#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:28:06,285 INFO L290 TraceCheckUtils]: 4: Hoare triple {71085#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71086#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,286 INFO L290 TraceCheckUtils]: 5: Hoare triple {71086#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71087#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,286 INFO L290 TraceCheckUtils]: 6: Hoare triple {71087#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71088#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:28:06,287 INFO L290 TraceCheckUtils]: 7: Hoare triple {71088#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71089#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,287 INFO L290 TraceCheckUtils]: 8: Hoare triple {71089#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71090#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,288 INFO L290 TraceCheckUtils]: 9: Hoare triple {71090#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71091#(and (<= correct_version_~l~0 (* 7 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:28:06,288 INFO L290 TraceCheckUtils]: 10: Hoare triple {71091#(and (<= correct_version_~l~0 (* 7 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,288 INFO L290 TraceCheckUtils]: 11: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,288 INFO L290 TraceCheckUtils]: 12: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,289 INFO L290 TraceCheckUtils]: 13: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,289 INFO L290 TraceCheckUtils]: 14: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,289 INFO L290 TraceCheckUtils]: 15: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,289 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} {71042#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {71064#(<= main_~m~0 (* 7 main_~a~0))} is VALID [2022-04-27 22:28:06,290 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:28:06,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:06,430 INFO L290 TraceCheckUtils]: 0: Hoare triple {71042#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,431 INFO L290 TraceCheckUtils]: 1: Hoare triple {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,431 INFO L290 TraceCheckUtils]: 2: Hoare triple {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,431 INFO L290 TraceCheckUtils]: 3: Hoare triple {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71094#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:28:06,432 INFO L290 TraceCheckUtils]: 4: Hoare triple {71094#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71095#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,432 INFO L290 TraceCheckUtils]: 5: Hoare triple {71095#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71096#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,433 INFO L290 TraceCheckUtils]: 6: Hoare triple {71096#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71097#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:28:06,433 INFO L290 TraceCheckUtils]: 7: Hoare triple {71097#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71098#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:28:06,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {71098#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71099#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,434 INFO L290 TraceCheckUtils]: 9: Hoare triple {71099#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71100#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:28:06,435 INFO L290 TraceCheckUtils]: 10: Hoare triple {71100#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71101#(and (<= (+ (* 7 |student_version_#in~a|) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,435 INFO L290 TraceCheckUtils]: 11: Hoare triple {71101#(and (<= (+ (* 7 |student_version_#in~a|) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,435 INFO L290 TraceCheckUtils]: 12: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,435 INFO L290 TraceCheckUtils]: 13: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,436 INFO L290 TraceCheckUtils]: 14: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,436 INFO L290 TraceCheckUtils]: 15: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,436 INFO L290 TraceCheckUtils]: 16: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,436 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} {71064#(<= main_~m~0 (* 7 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {71043#false} is VALID [2022-04-27 22:28:06,437 INFO L272 TraceCheckUtils]: 0: Hoare triple {71042#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71083#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:28:06,437 INFO L290 TraceCheckUtils]: 1: Hoare triple {71083#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {71042#true} is VALID [2022-04-27 22:28:06,437 INFO L290 TraceCheckUtils]: 2: Hoare triple {71042#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:06,437 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {71042#true} {71042#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:06,437 INFO L272 TraceCheckUtils]: 4: Hoare triple {71042#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:06,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {71042#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:06,437 INFO L290 TraceCheckUtils]: 6: Hoare triple {71042#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:06,437 INFO L272 TraceCheckUtils]: 7: Hoare triple {71042#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:06,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {71042#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:28:06,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:28:06,438 INFO L290 TraceCheckUtils]: 10: Hoare triple {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:28:06,439 INFO L290 TraceCheckUtils]: 11: Hoare triple {71084#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71085#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:28:06,439 INFO L290 TraceCheckUtils]: 12: Hoare triple {71085#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71086#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {71086#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71087#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {71087#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71088#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:28:06,440 INFO L290 TraceCheckUtils]: 15: Hoare triple {71088#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71089#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,441 INFO L290 TraceCheckUtils]: 16: Hoare triple {71089#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71090#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:06,441 INFO L290 TraceCheckUtils]: 17: Hoare triple {71090#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71091#(and (<= correct_version_~l~0 (* 7 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:28:06,442 INFO L290 TraceCheckUtils]: 18: Hoare triple {71091#(and (<= correct_version_~l~0 (* 7 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,442 INFO L290 TraceCheckUtils]: 19: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,442 INFO L290 TraceCheckUtils]: 20: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,442 INFO L290 TraceCheckUtils]: 21: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,442 INFO L290 TraceCheckUtils]: 22: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,443 INFO L290 TraceCheckUtils]: 23: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:06,443 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} {71042#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {71064#(<= main_~m~0 (* 7 main_~a~0))} is VALID [2022-04-27 22:28:06,443 INFO L290 TraceCheckUtils]: 25: Hoare triple {71064#(<= main_~m~0 (* 7 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {71064#(<= main_~m~0 (* 7 main_~a~0))} is VALID [2022-04-27 22:28:06,443 INFO L272 TraceCheckUtils]: 26: Hoare triple {71064#(<= main_~m~0 (* 7 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:06,444 INFO L290 TraceCheckUtils]: 27: Hoare triple {71042#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,444 INFO L290 TraceCheckUtils]: 28: Hoare triple {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,444 INFO L290 TraceCheckUtils]: 29: Hoare triple {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,445 INFO L290 TraceCheckUtils]: 30: Hoare triple {71093#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71094#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:28:06,445 INFO L290 TraceCheckUtils]: 31: Hoare triple {71094#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71095#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,445 INFO L290 TraceCheckUtils]: 32: Hoare triple {71095#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71096#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,446 INFO L290 TraceCheckUtils]: 33: Hoare triple {71096#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71097#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:28:06,446 INFO L290 TraceCheckUtils]: 34: Hoare triple {71097#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71098#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:28:06,447 INFO L290 TraceCheckUtils]: 35: Hoare triple {71098#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71099#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,447 INFO L290 TraceCheckUtils]: 36: Hoare triple {71099#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71100#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:28:06,447 INFO L290 TraceCheckUtils]: 37: Hoare triple {71100#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71101#(and (<= (+ (* 7 |student_version_#in~a|) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:06,448 INFO L290 TraceCheckUtils]: 38: Hoare triple {71101#(and (<= (+ (* 7 |student_version_#in~a|) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,448 INFO L290 TraceCheckUtils]: 39: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,448 INFO L290 TraceCheckUtils]: 40: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,448 INFO L290 TraceCheckUtils]: 41: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,448 INFO L290 TraceCheckUtils]: 42: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,449 INFO L290 TraceCheckUtils]: 43: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:06,449 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} {71064#(<= main_~m~0 (* 7 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {71043#false} is VALID [2022-04-27 22:28:06,449 INFO L290 TraceCheckUtils]: 45: Hoare triple {71043#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {71043#false} is VALID [2022-04-27 22:28:06,449 INFO L272 TraceCheckUtils]: 46: Hoare triple {71043#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {71043#false} is VALID [2022-04-27 22:28:06,449 INFO L290 TraceCheckUtils]: 47: Hoare triple {71043#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {71043#false} is VALID [2022-04-27 22:28:06,449 INFO L290 TraceCheckUtils]: 48: Hoare triple {71043#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {71043#false} is VALID [2022-04-27 22:28:06,449 INFO L290 TraceCheckUtils]: 49: Hoare triple {71043#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71043#false} is VALID [2022-04-27 22:28:06,450 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:28:06,450 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:28:06,450 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1073147010] [2022-04-27 22:28:06,450 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1073147010] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:28:06,450 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1253972758] [2022-04-27 22:28:06,450 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:28:06,450 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:28:06,450 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:28:06,451 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:28:06,452 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Waiting until timeout for monitored process [2022-04-27 22:28:06,519 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2022-04-27 22:28:06,520 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:28:06,521 INFO L263 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-27 22:28:06,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:06,531 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:28:07,474 INFO L272 TraceCheckUtils]: 0: Hoare triple {71042#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:07,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {71042#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {71042#true} is VALID [2022-04-27 22:28:07,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {71042#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:07,475 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {71042#true} {71042#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:07,475 INFO L272 TraceCheckUtils]: 4: Hoare triple {71042#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:07,475 INFO L290 TraceCheckUtils]: 5: Hoare triple {71042#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:07,475 INFO L290 TraceCheckUtils]: 6: Hoare triple {71042#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:07,475 INFO L272 TraceCheckUtils]: 7: Hoare triple {71042#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:07,475 INFO L290 TraceCheckUtils]: 8: Hoare triple {71042#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {71130#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,476 INFO L290 TraceCheckUtils]: 9: Hoare triple {71130#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {71130#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,476 INFO L290 TraceCheckUtils]: 10: Hoare triple {71130#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {71130#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,477 INFO L290 TraceCheckUtils]: 11: Hoare triple {71130#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71140#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,477 INFO L290 TraceCheckUtils]: 12: Hoare triple {71140#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71144#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {71144#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71148#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,478 INFO L290 TraceCheckUtils]: 14: Hoare triple {71148#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71152#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,479 INFO L290 TraceCheckUtils]: 15: Hoare triple {71152#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71156#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {71156#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71160#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,480 INFO L290 TraceCheckUtils]: 17: Hoare triple {71160#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71164#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 7)) |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,480 INFO L290 TraceCheckUtils]: 18: Hoare triple {71164#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 7)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,480 INFO L290 TraceCheckUtils]: 19: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,481 INFO L290 TraceCheckUtils]: 20: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,481 INFO L290 TraceCheckUtils]: 21: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,481 INFO L290 TraceCheckUtils]: 22: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,481 INFO L290 TraceCheckUtils]: 23: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:07,482 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} {71042#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {71064#(<= main_~m~0 (* 7 main_~a~0))} is VALID [2022-04-27 22:28:07,482 INFO L290 TraceCheckUtils]: 25: Hoare triple {71064#(<= main_~m~0 (* 7 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {71064#(<= main_~m~0 (* 7 main_~a~0))} is VALID [2022-04-27 22:28:07,482 INFO L272 TraceCheckUtils]: 26: Hoare triple {71064#(<= main_~m~0 (* 7 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:07,483 INFO L290 TraceCheckUtils]: 27: Hoare triple {71042#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {71195#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:28:07,483 INFO L290 TraceCheckUtils]: 28: Hoare triple {71195#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {71195#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:28:07,483 INFO L290 TraceCheckUtils]: 29: Hoare triple {71195#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {71195#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:28:07,484 INFO L290 TraceCheckUtils]: 30: Hoare triple {71195#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71205#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:28:07,484 INFO L290 TraceCheckUtils]: 31: Hoare triple {71205#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71209#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:28:07,485 INFO L290 TraceCheckUtils]: 32: Hoare triple {71209#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71213#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:28:07,485 INFO L290 TraceCheckUtils]: 33: Hoare triple {71213#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71217#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:28:07,486 INFO L290 TraceCheckUtils]: 34: Hoare triple {71217#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71221#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:28:07,486 INFO L290 TraceCheckUtils]: 35: Hoare triple {71221#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71225#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:28:07,487 INFO L290 TraceCheckUtils]: 36: Hoare triple {71225#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71229#(and (<= |student_version_#in~a| (div student_version_~l~1 7)) (<= student_version_~m |student_version_#in~m|))} is VALID [2022-04-27 22:28:07,487 INFO L290 TraceCheckUtils]: 37: Hoare triple {71229#(and (<= |student_version_#in~a| (div student_version_~l~1 7)) (<= student_version_~m |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:07,488 INFO L290 TraceCheckUtils]: 38: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:07,488 INFO L290 TraceCheckUtils]: 39: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:07,488 INFO L290 TraceCheckUtils]: 40: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:07,488 INFO L290 TraceCheckUtils]: 41: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:07,489 INFO L290 TraceCheckUtils]: 42: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:07,489 INFO L290 TraceCheckUtils]: 43: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:07,489 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} {71064#(<= main_~m~0 (* 7 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {71043#false} is VALID [2022-04-27 22:28:07,489 INFO L290 TraceCheckUtils]: 45: Hoare triple {71043#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {71043#false} is VALID [2022-04-27 22:28:07,489 INFO L272 TraceCheckUtils]: 46: Hoare triple {71043#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {71043#false} is VALID [2022-04-27 22:28:07,490 INFO L290 TraceCheckUtils]: 47: Hoare triple {71043#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {71043#false} is VALID [2022-04-27 22:28:07,490 INFO L290 TraceCheckUtils]: 48: Hoare triple {71043#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {71043#false} is VALID [2022-04-27 22:28:07,490 INFO L290 TraceCheckUtils]: 49: Hoare triple {71043#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71043#false} is VALID [2022-04-27 22:28:07,490 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:28:07,490 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:28:08,877 INFO L290 TraceCheckUtils]: 49: Hoare triple {71043#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71043#false} is VALID [2022-04-27 22:28:08,877 INFO L290 TraceCheckUtils]: 48: Hoare triple {71043#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {71043#false} is VALID [2022-04-27 22:28:08,877 INFO L290 TraceCheckUtils]: 47: Hoare triple {71043#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {71043#false} is VALID [2022-04-27 22:28:08,877 INFO L272 TraceCheckUtils]: 46: Hoare triple {71043#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {71043#false} is VALID [2022-04-27 22:28:08,877 INFO L290 TraceCheckUtils]: 45: Hoare triple {71043#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {71043#false} is VALID [2022-04-27 22:28:08,878 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} {71064#(<= main_~m~0 (* 7 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {71043#false} is VALID [2022-04-27 22:28:08,878 INFO L290 TraceCheckUtils]: 43: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:08,878 INFO L290 TraceCheckUtils]: 42: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:08,878 INFO L290 TraceCheckUtils]: 41: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:08,879 INFO L290 TraceCheckUtils]: 40: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:08,879 INFO L290 TraceCheckUtils]: 39: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:08,879 INFO L290 TraceCheckUtils]: 38: Hoare triple {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:08,879 INFO L290 TraceCheckUtils]: 37: Hoare triple {71308#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71102#(<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:28:08,880 INFO L290 TraceCheckUtils]: 36: Hoare triple {71312#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71308#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:28:08,880 INFO L290 TraceCheckUtils]: 35: Hoare triple {71316#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71312#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:28:08,881 INFO L290 TraceCheckUtils]: 34: Hoare triple {71320#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71316#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:28:08,881 INFO L290 TraceCheckUtils]: 33: Hoare triple {71324#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71320#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:28:08,882 INFO L290 TraceCheckUtils]: 32: Hoare triple {71328#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71324#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:28:08,882 INFO L290 TraceCheckUtils]: 31: Hoare triple {71332#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71328#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:28:08,883 INFO L290 TraceCheckUtils]: 30: Hoare triple {71336#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {71332#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:28:08,883 INFO L290 TraceCheckUtils]: 29: Hoare triple {71336#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {71336#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:28:08,883 INFO L290 TraceCheckUtils]: 28: Hoare triple {71336#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {71336#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:28:08,883 INFO L290 TraceCheckUtils]: 27: Hoare triple {71042#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {71336#(or (<= (+ (* 7 |student_version_#in~a|) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:28:08,884 INFO L272 TraceCheckUtils]: 26: Hoare triple {71064#(<= main_~m~0 (* 7 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:08,884 INFO L290 TraceCheckUtils]: 25: Hoare triple {71064#(<= main_~m~0 (* 7 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {71064#(<= main_~m~0 (* 7 main_~a~0))} is VALID [2022-04-27 22:28:08,884 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} {71042#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {71064#(<= main_~m~0 (* 7 main_~a~0))} is VALID [2022-04-27 22:28:08,884 INFO L290 TraceCheckUtils]: 23: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:08,885 INFO L290 TraceCheckUtils]: 22: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:08,885 INFO L290 TraceCheckUtils]: 21: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:08,885 INFO L290 TraceCheckUtils]: 20: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:08,885 INFO L290 TraceCheckUtils]: 19: Hoare triple {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:08,885 INFO L290 TraceCheckUtils]: 18: Hoare triple {71373#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {71092#(<= |correct_version_#in~m| (* 7 |correct_version_#in~a|))} is VALID [2022-04-27 22:28:08,886 INFO L290 TraceCheckUtils]: 17: Hoare triple {71377#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71373#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} is VALID [2022-04-27 22:28:08,886 INFO L290 TraceCheckUtils]: 16: Hoare triple {71381#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71377#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:28:08,887 INFO L290 TraceCheckUtils]: 15: Hoare triple {71385#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71381#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} is VALID [2022-04-27 22:28:08,887 INFO L290 TraceCheckUtils]: 14: Hoare triple {71389#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71385#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} is VALID [2022-04-27 22:28:08,888 INFO L290 TraceCheckUtils]: 13: Hoare triple {71393#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71389#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} is VALID [2022-04-27 22:28:08,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {71397#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71393#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:28:08,889 INFO L290 TraceCheckUtils]: 11: Hoare triple {71401#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {71397#(or (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:28:08,917 INFO L290 TraceCheckUtils]: 10: Hoare triple {71401#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {71401#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} is VALID [2022-04-27 22:28:08,918 INFO L290 TraceCheckUtils]: 9: Hoare triple {71401#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {71401#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} is VALID [2022-04-27 22:28:08,918 INFO L290 TraceCheckUtils]: 8: Hoare triple {71042#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {71401#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 7 |correct_version_#in~a|)))} is VALID [2022-04-27 22:28:08,918 INFO L272 TraceCheckUtils]: 7: Hoare triple {71042#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:08,918 INFO L290 TraceCheckUtils]: 6: Hoare triple {71042#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:08,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {71042#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {71042#true} is VALID [2022-04-27 22:28:08,918 INFO L272 TraceCheckUtils]: 4: Hoare triple {71042#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:08,918 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {71042#true} {71042#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:08,918 INFO L290 TraceCheckUtils]: 2: Hoare triple {71042#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:08,918 INFO L290 TraceCheckUtils]: 1: Hoare triple {71042#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {71042#true} is VALID [2022-04-27 22:28:08,919 INFO L272 TraceCheckUtils]: 0: Hoare triple {71042#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71042#true} is VALID [2022-04-27 22:28:08,919 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 8 proven. 56 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:28:08,919 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1253972758] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:28:08,919 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:28:08,919 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 21, 21] total 55 [2022-04-27 22:28:08,919 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [301775604] [2022-04-27 22:28:08,919 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:28:08,920 INFO L78 Accepts]: Start accepts. Automaton has has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 50 [2022-04-27 22:28:08,920 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:28:08,920 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:08,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:08,964 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 55 states [2022-04-27 22:28:08,964 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:28:08,964 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 55 interpolants. [2022-04-27 22:28:08,965 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=180, Invalid=2790, Unknown=0, NotChecked=0, Total=2970 [2022-04-27 22:28:08,965 INFO L87 Difference]: Start difference. First operand 374 states and 429 transitions. Second operand has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:18,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:18,031 INFO L93 Difference]: Finished difference Result 442 states and 510 transitions. [2022-04-27 22:28:18,031 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2022-04-27 22:28:18,031 INFO L78 Accepts]: Start accepts. Automaton has has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 50 [2022-04-27 22:28:18,031 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:28:18,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:18,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 162 transitions. [2022-04-27 22:28:18,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:18,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 162 transitions. [2022-04-27 22:28:18,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 162 transitions. [2022-04-27 22:28:18,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:18,143 INFO L225 Difference]: With dead ends: 442 [2022-04-27 22:28:18,143 INFO L226 Difference]: Without dead ends: 428 [2022-04-27 22:28:18,145 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 67 SyntacticMatches, 5 SemanticMatches, 85 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1034 ImplicationChecksByTransitivity, 2.1s TimeCoverageRelationStatistics Valid=546, Invalid=6936, Unknown=0, NotChecked=0, Total=7482 [2022-04-27 22:28:18,145 INFO L413 NwaCegarLoop]: 94 mSDtfsCounter, 806 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 4184 mSolverCounterSat, 100 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 811 SdHoareTripleChecker+Valid, 266 SdHoareTripleChecker+Invalid, 4284 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 100 IncrementalHoareTripleChecker+Valid, 4184 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.8s IncrementalHoareTripleChecker+Time [2022-04-27 22:28:18,145 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [811 Valid, 266 Invalid, 4284 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [100 Valid, 4184 Invalid, 0 Unknown, 0 Unchecked, 2.8s Time] [2022-04-27 22:28:18,146 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 428 states. [2022-04-27 22:28:20,038 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 428 to 419. [2022-04-27 22:28:20,038 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:28:20,038 INFO L82 GeneralOperation]: Start isEquivalent. First operand 428 states. Second operand has 419 states, 359 states have (on average 1.1671309192200556) internal successors, (419), 393 states have internal predecessors, (419), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (41), 20 states have call predecessors, (41), 20 states have call successors, (41) [2022-04-27 22:28:20,039 INFO L74 IsIncluded]: Start isIncluded. First operand 428 states. Second operand has 419 states, 359 states have (on average 1.1671309192200556) internal successors, (419), 393 states have internal predecessors, (419), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (41), 20 states have call predecessors, (41), 20 states have call successors, (41) [2022-04-27 22:28:20,039 INFO L87 Difference]: Start difference. First operand 428 states. Second operand has 419 states, 359 states have (on average 1.1671309192200556) internal successors, (419), 393 states have internal predecessors, (419), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (41), 20 states have call predecessors, (41), 20 states have call successors, (41) [2022-04-27 22:28:20,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:20,047 INFO L93 Difference]: Finished difference Result 428 states and 492 transitions. [2022-04-27 22:28:20,047 INFO L276 IsEmpty]: Start isEmpty. Operand 428 states and 492 transitions. [2022-04-27 22:28:20,049 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:20,049 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:20,049 INFO L74 IsIncluded]: Start isIncluded. First operand has 419 states, 359 states have (on average 1.1671309192200556) internal successors, (419), 393 states have internal predecessors, (419), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (41), 20 states have call predecessors, (41), 20 states have call successors, (41) Second operand 428 states. [2022-04-27 22:28:20,049 INFO L87 Difference]: Start difference. First operand has 419 states, 359 states have (on average 1.1671309192200556) internal successors, (419), 393 states have internal predecessors, (419), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (41), 20 states have call predecessors, (41), 20 states have call successors, (41) Second operand 428 states. [2022-04-27 22:28:20,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:20,057 INFO L93 Difference]: Finished difference Result 428 states and 492 transitions. [2022-04-27 22:28:20,057 INFO L276 IsEmpty]: Start isEmpty. Operand 428 states and 492 transitions. [2022-04-27 22:28:20,058 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:20,058 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:20,058 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:28:20,058 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:28:20,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 419 states, 359 states have (on average 1.1671309192200556) internal successors, (419), 393 states have internal predecessors, (419), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (41), 20 states have call predecessors, (41), 20 states have call successors, (41) [2022-04-27 22:28:20,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 419 states to 419 states and 482 transitions. [2022-04-27 22:28:20,067 INFO L78 Accepts]: Start accepts. Automaton has 419 states and 482 transitions. Word has length 50 [2022-04-27 22:28:20,067 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:28:20,068 INFO L495 AbstractCegarLoop]: Abstraction has 419 states and 482 transitions. [2022-04-27 22:28:20,068 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:20,068 INFO L276 IsEmpty]: Start isEmpty. Operand 419 states and 482 transitions. [2022-04-27 22:28:20,083 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 22:28:20,083 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:28:20,083 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 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-27 22:28:20,101 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Forceful destruction successful, exit code 0 [2022-04-27 22:28:20,298 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable56,48 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:28:20,299 INFO L420 AbstractCegarLoop]: === Iteration 58 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:28:20,299 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:28:20,299 INFO L85 PathProgramCache]: Analyzing trace with hash 30934931, now seen corresponding path program 48 times [2022-04-27 22:28:20,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:28:20,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [169204753] [2022-04-27 22:28:20,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:28:20,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:28:20,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:20,329 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:28:20,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:20,331 INFO L290 TraceCheckUtils]: 0: Hoare triple {73626#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {73585#true} is VALID [2022-04-27 22:28:20,331 INFO L290 TraceCheckUtils]: 1: Hoare triple {73585#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:20,331 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {73585#true} {73585#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:20,331 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:28:20,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:20,444 INFO L290 TraceCheckUtils]: 0: Hoare triple {73585#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,444 INFO L290 TraceCheckUtils]: 1: Hoare triple {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,445 INFO L290 TraceCheckUtils]: 2: Hoare triple {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,445 INFO L290 TraceCheckUtils]: 3: Hoare triple {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73628#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,445 INFO L290 TraceCheckUtils]: 4: Hoare triple {73628#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73629#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,446 INFO L290 TraceCheckUtils]: 5: Hoare triple {73629#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73630#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,446 INFO L290 TraceCheckUtils]: 6: Hoare triple {73630#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73631#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,447 INFO L290 TraceCheckUtils]: 7: Hoare triple {73631#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73632#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:28:20,447 INFO L290 TraceCheckUtils]: 8: Hoare triple {73632#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73633#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,448 INFO L290 TraceCheckUtils]: 9: Hoare triple {73633#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73634#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,448 INFO L290 TraceCheckUtils]: 10: Hoare triple {73634#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73635#(and (<= (+ (* 7 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:28:20,449 INFO L290 TraceCheckUtils]: 11: Hoare triple {73635#(and (<= (+ (* 7 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,449 INFO L290 TraceCheckUtils]: 12: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,449 INFO L290 TraceCheckUtils]: 13: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,449 INFO L290 TraceCheckUtils]: 14: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,449 INFO L290 TraceCheckUtils]: 15: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,449 INFO L290 TraceCheckUtils]: 16: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,450 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {73585#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:28:20,450 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:28:20,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:20,632 INFO L290 TraceCheckUtils]: 0: Hoare triple {73585#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:28:20,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:28:20,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:28:20,634 INFO L290 TraceCheckUtils]: 3: Hoare triple {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73638#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:28:20,634 INFO L290 TraceCheckUtils]: 4: Hoare triple {73638#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73639#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:28:20,635 INFO L290 TraceCheckUtils]: 5: Hoare triple {73639#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73640#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:28:20,635 INFO L290 TraceCheckUtils]: 6: Hoare triple {73640#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73641#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:28:20,636 INFO L290 TraceCheckUtils]: 7: Hoare triple {73641#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:28:20,636 INFO L290 TraceCheckUtils]: 8: Hoare triple {73642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:28:20,637 INFO L290 TraceCheckUtils]: 9: Hoare triple {73643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73644#(and (<= student_version_~l~1 (* 7 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:20,637 INFO L290 TraceCheckUtils]: 10: Hoare triple {73644#(and (<= student_version_~l~1 (* 7 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,637 INFO L290 TraceCheckUtils]: 11: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,638 INFO L290 TraceCheckUtils]: 12: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,638 INFO L290 TraceCheckUtils]: 13: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,638 INFO L290 TraceCheckUtils]: 14: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,638 INFO L290 TraceCheckUtils]: 15: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,639 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {73586#false} is VALID [2022-04-27 22:28:20,640 INFO L272 TraceCheckUtils]: 0: Hoare triple {73585#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73626#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:28:20,640 INFO L290 TraceCheckUtils]: 1: Hoare triple {73626#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {73585#true} is VALID [2022-04-27 22:28:20,640 INFO L290 TraceCheckUtils]: 2: Hoare triple {73585#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:20,640 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {73585#true} {73585#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:20,640 INFO L272 TraceCheckUtils]: 4: Hoare triple {73585#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:20,640 INFO L290 TraceCheckUtils]: 5: Hoare triple {73585#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:20,640 INFO L290 TraceCheckUtils]: 6: Hoare triple {73585#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:20,640 INFO L272 TraceCheckUtils]: 7: Hoare triple {73585#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:20,641 INFO L290 TraceCheckUtils]: 8: Hoare triple {73585#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,641 INFO L290 TraceCheckUtils]: 9: Hoare triple {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,641 INFO L290 TraceCheckUtils]: 10: Hoare triple {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,642 INFO L290 TraceCheckUtils]: 11: Hoare triple {73627#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73628#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,642 INFO L290 TraceCheckUtils]: 12: Hoare triple {73628#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73629#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,643 INFO L290 TraceCheckUtils]: 13: Hoare triple {73629#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73630#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,643 INFO L290 TraceCheckUtils]: 14: Hoare triple {73630#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73631#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,644 INFO L290 TraceCheckUtils]: 15: Hoare triple {73631#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73632#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:28:20,644 INFO L290 TraceCheckUtils]: 16: Hoare triple {73632#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73633#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,645 INFO L290 TraceCheckUtils]: 17: Hoare triple {73633#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73634#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:20,645 INFO L290 TraceCheckUtils]: 18: Hoare triple {73634#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73635#(and (<= (+ (* 7 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:28:20,646 INFO L290 TraceCheckUtils]: 19: Hoare triple {73635#(and (<= (+ (* 7 |correct_version_#in~a|) 1) correct_version_~m) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,646 INFO L290 TraceCheckUtils]: 20: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,646 INFO L290 TraceCheckUtils]: 21: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,647 INFO L290 TraceCheckUtils]: 22: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,647 INFO L290 TraceCheckUtils]: 23: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,647 INFO L290 TraceCheckUtils]: 24: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:20,648 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {73585#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:28:20,648 INFO L290 TraceCheckUtils]: 26: Hoare triple {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:28:20,648 INFO L272 TraceCheckUtils]: 27: Hoare triple {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:20,648 INFO L290 TraceCheckUtils]: 28: Hoare triple {73585#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:28:20,649 INFO L290 TraceCheckUtils]: 29: Hoare triple {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:28:20,649 INFO L290 TraceCheckUtils]: 30: Hoare triple {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:28:20,650 INFO L290 TraceCheckUtils]: 31: Hoare triple {73637#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73638#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:28:20,650 INFO L290 TraceCheckUtils]: 32: Hoare triple {73638#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73639#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:28:20,651 INFO L290 TraceCheckUtils]: 33: Hoare triple {73639#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73640#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:28:20,651 INFO L290 TraceCheckUtils]: 34: Hoare triple {73640#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73641#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:28:20,652 INFO L290 TraceCheckUtils]: 35: Hoare triple {73641#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:28:20,652 INFO L290 TraceCheckUtils]: 36: Hoare triple {73642#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:28:20,653 INFO L290 TraceCheckUtils]: 37: Hoare triple {73643#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73644#(and (<= student_version_~l~1 (* 7 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:28:20,653 INFO L290 TraceCheckUtils]: 38: Hoare triple {73644#(and (<= student_version_~l~1 (* 7 |student_version_#in~a|)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,653 INFO L290 TraceCheckUtils]: 39: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,654 INFO L290 TraceCheckUtils]: 40: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,654 INFO L290 TraceCheckUtils]: 41: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,654 INFO L290 TraceCheckUtils]: 42: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,654 INFO L290 TraceCheckUtils]: 43: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:20,655 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {73586#false} is VALID [2022-04-27 22:28:20,655 INFO L290 TraceCheckUtils]: 45: Hoare triple {73586#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {73586#false} is VALID [2022-04-27 22:28:20,655 INFO L272 TraceCheckUtils]: 46: Hoare triple {73586#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {73586#false} is VALID [2022-04-27 22:28:20,655 INFO L290 TraceCheckUtils]: 47: Hoare triple {73586#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {73586#false} is VALID [2022-04-27 22:28:20,655 INFO L290 TraceCheckUtils]: 48: Hoare triple {73586#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {73586#false} is VALID [2022-04-27 22:28:20,656 INFO L290 TraceCheckUtils]: 49: Hoare triple {73586#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73586#false} is VALID [2022-04-27 22:28:20,656 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:28:20,656 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:28:20,656 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [169204753] [2022-04-27 22:28:20,656 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [169204753] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:28:20,656 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1835431149] [2022-04-27 22:28:20,656 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:28:20,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:28:20,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:28:20,657 INFO L229 MonitoredProcess]: Starting monitored process 49 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:28:20,658 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (49)] Waiting until timeout for monitored process [2022-04-27 22:28:20,734 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-27 22:28:20,734 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:28:20,735 INFO L263 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-27 22:28:20,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:20,748 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:28:21,886 INFO L272 TraceCheckUtils]: 0: Hoare triple {73585#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:21,886 INFO L290 TraceCheckUtils]: 1: Hoare triple {73585#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {73585#true} is VALID [2022-04-27 22:28:21,886 INFO L290 TraceCheckUtils]: 2: Hoare triple {73585#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:21,886 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {73585#true} {73585#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:21,887 INFO L272 TraceCheckUtils]: 4: Hoare triple {73585#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:21,887 INFO L290 TraceCheckUtils]: 5: Hoare triple {73585#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:21,887 INFO L290 TraceCheckUtils]: 6: Hoare triple {73585#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:21,887 INFO L272 TraceCheckUtils]: 7: Hoare triple {73585#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:21,887 INFO L290 TraceCheckUtils]: 8: Hoare triple {73585#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {73673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,888 INFO L290 TraceCheckUtils]: 9: Hoare triple {73673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {73673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,888 INFO L290 TraceCheckUtils]: 10: Hoare triple {73673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {73673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,888 INFO L290 TraceCheckUtils]: 11: Hoare triple {73673#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73683#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,889 INFO L290 TraceCheckUtils]: 12: Hoare triple {73683#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73687#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,890 INFO L290 TraceCheckUtils]: 13: Hoare triple {73687#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73691#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,890 INFO L290 TraceCheckUtils]: 14: Hoare triple {73691#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73695#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,891 INFO L290 TraceCheckUtils]: 15: Hoare triple {73695#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73699#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:28:21,891 INFO L290 TraceCheckUtils]: 16: Hoare triple {73699#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73703#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:28:21,892 INFO L290 TraceCheckUtils]: 17: Hoare triple {73703#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73707#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 7)))} is VALID [2022-04-27 22:28:21,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {73707#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 7)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:21,892 INFO L290 TraceCheckUtils]: 19: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:21,893 INFO L290 TraceCheckUtils]: 20: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:21,893 INFO L290 TraceCheckUtils]: 21: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:21,893 INFO L290 TraceCheckUtils]: 22: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:21,894 INFO L290 TraceCheckUtils]: 23: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:21,894 INFO L290 TraceCheckUtils]: 24: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:21,894 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {73585#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:28:21,895 INFO L290 TraceCheckUtils]: 26: Hoare triple {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:28:21,895 INFO L272 TraceCheckUtils]: 27: Hoare triple {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:21,895 INFO L290 TraceCheckUtils]: 28: Hoare triple {73585#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {73741#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,896 INFO L290 TraceCheckUtils]: 29: Hoare triple {73741#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {73741#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,896 INFO L290 TraceCheckUtils]: 30: Hoare triple {73741#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {73741#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,897 INFO L290 TraceCheckUtils]: 31: Hoare triple {73741#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73751#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,897 INFO L290 TraceCheckUtils]: 32: Hoare triple {73751#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73755#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:28:21,898 INFO L290 TraceCheckUtils]: 33: Hoare triple {73755#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73759#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,898 INFO L290 TraceCheckUtils]: 34: Hoare triple {73759#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73763#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,899 INFO L290 TraceCheckUtils]: 35: Hoare triple {73763#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73767#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:28:21,899 INFO L290 TraceCheckUtils]: 36: Hoare triple {73767#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73771#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:28:21,900 INFO L290 TraceCheckUtils]: 37: Hoare triple {73771#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73775#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 7)) |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,900 INFO L290 TraceCheckUtils]: 38: Hoare triple {73775#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 7)) |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,900 INFO L290 TraceCheckUtils]: 39: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,901 INFO L290 TraceCheckUtils]: 40: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,901 INFO L290 TraceCheckUtils]: 41: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,901 INFO L290 TraceCheckUtils]: 42: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,902 INFO L290 TraceCheckUtils]: 43: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:21,902 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {73586#false} is VALID [2022-04-27 22:28:21,902 INFO L290 TraceCheckUtils]: 45: Hoare triple {73586#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {73586#false} is VALID [2022-04-27 22:28:21,902 INFO L272 TraceCheckUtils]: 46: Hoare triple {73586#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {73586#false} is VALID [2022-04-27 22:28:21,903 INFO L290 TraceCheckUtils]: 47: Hoare triple {73586#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {73586#false} is VALID [2022-04-27 22:28:21,903 INFO L290 TraceCheckUtils]: 48: Hoare triple {73586#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {73586#false} is VALID [2022-04-27 22:28:21,903 INFO L290 TraceCheckUtils]: 49: Hoare triple {73586#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73586#false} is VALID [2022-04-27 22:28:21,903 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:28:21,903 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:28:23,285 INFO L290 TraceCheckUtils]: 49: Hoare triple {73586#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73586#false} is VALID [2022-04-27 22:28:23,286 INFO L290 TraceCheckUtils]: 48: Hoare triple {73586#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {73586#false} is VALID [2022-04-27 22:28:23,286 INFO L290 TraceCheckUtils]: 47: Hoare triple {73586#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {73586#false} is VALID [2022-04-27 22:28:23,286 INFO L272 TraceCheckUtils]: 46: Hoare triple {73586#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {73586#false} is VALID [2022-04-27 22:28:23,286 INFO L290 TraceCheckUtils]: 45: Hoare triple {73586#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {73586#false} is VALID [2022-04-27 22:28:23,286 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {73586#false} is VALID [2022-04-27 22:28:23,287 INFO L290 TraceCheckUtils]: 43: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:23,287 INFO L290 TraceCheckUtils]: 42: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:23,287 INFO L290 TraceCheckUtils]: 41: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:23,287 INFO L290 TraceCheckUtils]: 40: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:23,287 INFO L290 TraceCheckUtils]: 39: Hoare triple {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:23,288 INFO L290 TraceCheckUtils]: 38: Hoare triple {73848#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {73645#(<= |student_version_#in~m| (* 7 |student_version_#in~a|))} is VALID [2022-04-27 22:28:23,288 INFO L290 TraceCheckUtils]: 37: Hoare triple {73852#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73848#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:28:23,288 INFO L290 TraceCheckUtils]: 36: Hoare triple {73856#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73852#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:28:23,289 INFO L290 TraceCheckUtils]: 35: Hoare triple {73860#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73856#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:28:23,289 INFO L290 TraceCheckUtils]: 34: Hoare triple {73864#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73860#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:28:23,290 INFO L290 TraceCheckUtils]: 33: Hoare triple {73868#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73864#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:28:23,311 INFO L290 TraceCheckUtils]: 32: Hoare triple {73872#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73868#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:28:23,312 INFO L290 TraceCheckUtils]: 31: Hoare triple {73876#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {73872#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:28:23,312 INFO L290 TraceCheckUtils]: 30: Hoare triple {73876#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {73876#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:28:23,312 INFO L290 TraceCheckUtils]: 29: Hoare triple {73876#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {73876#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:28:23,313 INFO L290 TraceCheckUtils]: 28: Hoare triple {73585#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {73876#(or (<= |student_version_#in~m| (* 7 |student_version_#in~a|)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:28:23,313 INFO L272 TraceCheckUtils]: 27: Hoare triple {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:23,313 INFO L290 TraceCheckUtils]: 26: Hoare triple {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:28:23,314 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {73585#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {73608#(<= (+ (* 7 main_~a~0) 1) main_~m~0)} is VALID [2022-04-27 22:28:23,314 INFO L290 TraceCheckUtils]: 24: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:23,314 INFO L290 TraceCheckUtils]: 23: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:23,314 INFO L290 TraceCheckUtils]: 22: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:23,314 INFO L290 TraceCheckUtils]: 21: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:23,314 INFO L290 TraceCheckUtils]: 20: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:23,315 INFO L290 TraceCheckUtils]: 19: Hoare triple {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:23,315 INFO L290 TraceCheckUtils]: 18: Hoare triple {73916#(or (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73636#(<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:28:23,315 INFO L290 TraceCheckUtils]: 17: Hoare triple {73920#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73916#(or (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:28:23,316 INFO L290 TraceCheckUtils]: 16: Hoare triple {73924#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73920#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,316 INFO L290 TraceCheckUtils]: 15: Hoare triple {73928#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73924#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,317 INFO L290 TraceCheckUtils]: 14: Hoare triple {73932#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73928#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {73936#(or (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73932#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,318 INFO L290 TraceCheckUtils]: 12: Hoare triple {73940#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73936#(or (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,318 INFO L290 TraceCheckUtils]: 11: Hoare triple {73944#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {73940#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,318 INFO L290 TraceCheckUtils]: 10: Hoare triple {73944#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {73944#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,319 INFO L290 TraceCheckUtils]: 9: Hoare triple {73944#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {73944#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,319 INFO L290 TraceCheckUtils]: 8: Hoare triple {73585#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {73944#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 7 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:28:23,319 INFO L272 TraceCheckUtils]: 7: Hoare triple {73585#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:23,319 INFO L290 TraceCheckUtils]: 6: Hoare triple {73585#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:23,319 INFO L290 TraceCheckUtils]: 5: Hoare triple {73585#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {73585#true} is VALID [2022-04-27 22:28:23,319 INFO L272 TraceCheckUtils]: 4: Hoare triple {73585#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:23,319 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {73585#true} {73585#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:23,319 INFO L290 TraceCheckUtils]: 2: Hoare triple {73585#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:23,319 INFO L290 TraceCheckUtils]: 1: Hoare triple {73585#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {73585#true} is VALID [2022-04-27 22:28:23,320 INFO L272 TraceCheckUtils]: 0: Hoare triple {73585#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {73585#true} is VALID [2022-04-27 22:28:23,320 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 8 proven. 56 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:28:23,320 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1835431149] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:28:23,320 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:28:23,320 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 21, 21] total 55 [2022-04-27 22:28:23,320 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [583330780] [2022-04-27 22:28:23,320 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:28:23,320 INFO L78 Accepts]: Start accepts. Automaton has has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 50 [2022-04-27 22:28:23,321 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:28:23,321 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:23,361 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:23,361 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 55 states [2022-04-27 22:28:23,361 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:28:23,361 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 55 interpolants. [2022-04-27 22:28:23,361 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=180, Invalid=2790, Unknown=0, NotChecked=0, Total=2970 [2022-04-27 22:28:23,362 INFO L87 Difference]: Start difference. First operand 419 states and 482 transitions. Second operand has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:32,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:32,770 INFO L93 Difference]: Finished difference Result 434 states and 497 transitions. [2022-04-27 22:28:32,770 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2022-04-27 22:28:32,771 INFO L78 Accepts]: Start accepts. Automaton has has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 50 [2022-04-27 22:28:32,771 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:28:32,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:32,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 161 transitions. [2022-04-27 22:28:32,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:32,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 161 transitions. [2022-04-27 22:28:32,773 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 161 transitions. [2022-04-27 22:28:32,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:32,927 INFO L225 Difference]: With dead ends: 434 [2022-04-27 22:28:32,927 INFO L226 Difference]: Without dead ends: 422 [2022-04-27 22:28:32,929 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 85 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1045 ImplicationChecksByTransitivity, 2.1s TimeCoverageRelationStatistics Valid=546, Invalid=6936, Unknown=0, NotChecked=0, Total=7482 [2022-04-27 22:28:32,930 INFO L413 NwaCegarLoop]: 96 mSDtfsCounter, 836 mSDsluCounter, 167 mSDsCounter, 0 mSdLazyCounter, 4171 mSolverCounterSat, 87 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 851 SdHoareTripleChecker+Valid, 263 SdHoareTripleChecker+Invalid, 4258 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 87 IncrementalHoareTripleChecker+Valid, 4171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:28:32,930 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [851 Valid, 263 Invalid, 4258 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [87 Valid, 4171 Invalid, 0 Unknown, 0 Unchecked, 2.9s Time] [2022-04-27 22:28:32,930 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 422 states. [2022-04-27 22:28:36,338 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 422 to 420. [2022-04-27 22:28:36,338 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:28:36,339 INFO L82 GeneralOperation]: Start isEquivalent. First operand 422 states. Second operand has 420 states, 360 states have (on average 1.1666666666666667) internal successors, (420), 394 states have internal predecessors, (420), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:36,339 INFO L74 IsIncluded]: Start isIncluded. First operand 422 states. Second operand has 420 states, 360 states have (on average 1.1666666666666667) internal successors, (420), 394 states have internal predecessors, (420), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:36,339 INFO L87 Difference]: Start difference. First operand 422 states. Second operand has 420 states, 360 states have (on average 1.1666666666666667) internal successors, (420), 394 states have internal predecessors, (420), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:36,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:36,347 INFO L93 Difference]: Finished difference Result 422 states and 482 transitions. [2022-04-27 22:28:36,347 INFO L276 IsEmpty]: Start isEmpty. Operand 422 states and 482 transitions. [2022-04-27 22:28:36,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:36,348 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:36,348 INFO L74 IsIncluded]: Start isIncluded. First operand has 420 states, 360 states have (on average 1.1666666666666667) internal successors, (420), 394 states have internal predecessors, (420), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) Second operand 422 states. [2022-04-27 22:28:36,349 INFO L87 Difference]: Start difference. First operand has 420 states, 360 states have (on average 1.1666666666666667) internal successors, (420), 394 states have internal predecessors, (420), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) Second operand 422 states. [2022-04-27 22:28:36,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:36,356 INFO L93 Difference]: Finished difference Result 422 states and 482 transitions. [2022-04-27 22:28:36,356 INFO L276 IsEmpty]: Start isEmpty. Operand 422 states and 482 transitions. [2022-04-27 22:28:36,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:36,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:36,357 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:28:36,357 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:28:36,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 420 states, 360 states have (on average 1.1666666666666667) internal successors, (420), 394 states have internal predecessors, (420), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:36,366 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 420 states to 420 states and 480 transitions. [2022-04-27 22:28:36,367 INFO L78 Accepts]: Start accepts. Automaton has 420 states and 480 transitions. Word has length 50 [2022-04-27 22:28:36,367 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:28:36,367 INFO L495 AbstractCegarLoop]: Abstraction has 420 states and 480 transitions. [2022-04-27 22:28:36,367 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 55 states, 55 states have (on average 1.6) internal successors, (88), 54 states have internal predecessors, (88), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:28:36,367 INFO L276 IsEmpty]: Start isEmpty. Operand 420 states and 480 transitions. [2022-04-27 22:28:36,368 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 22:28:36,368 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:28:36,369 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:28:36,385 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (49)] Ended with exit code 0 [2022-04-27 22:28:36,582 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 49 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable57 [2022-04-27 22:28:36,582 INFO L420 AbstractCegarLoop]: === Iteration 59 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:28:36,582 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:28:36,582 INFO L85 PathProgramCache]: Analyzing trace with hash 2075396918, now seen corresponding path program 49 times [2022-04-27 22:28:36,582 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:28:36,583 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [257188483] [2022-04-27 22:28:36,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:28:36,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:28:36,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:36,605 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:28:36,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:36,607 INFO L290 TraceCheckUtils]: 0: Hoare triple {76146#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {76106#true} is VALID [2022-04-27 22:28:36,607 INFO L290 TraceCheckUtils]: 1: Hoare triple {76106#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,607 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {76106#true} {76106#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,607 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:28:36,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 0: Hoare triple {76106#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 1: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 2: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 3: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 4: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 5: Hoare triple {76106#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 6: Hoare triple {76106#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 7: Hoare triple {76106#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 8: Hoare triple {76106#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 9: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 10: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,612 INFO L290 TraceCheckUtils]: 11: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,613 INFO L290 TraceCheckUtils]: 12: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,613 INFO L290 TraceCheckUtils]: 13: Hoare triple {76106#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,613 INFO L290 TraceCheckUtils]: 14: Hoare triple {76106#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {76106#true} is VALID [2022-04-27 22:28:36,613 INFO L290 TraceCheckUtils]: 15: Hoare triple {76106#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,613 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {76106#true} {76106#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:36,613 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:28:36,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:36,684 INFO L290 TraceCheckUtils]: 0: Hoare triple {76106#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {76147#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:28:36,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {76147#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76148#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:28:36,685 INFO L290 TraceCheckUtils]: 2: Hoare triple {76148#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76149#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:28:36,685 INFO L290 TraceCheckUtils]: 3: Hoare triple {76149#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76150#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:28:36,685 INFO L290 TraceCheckUtils]: 4: Hoare triple {76150#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,686 INFO L290 TraceCheckUtils]: 5: Hoare triple {76151#(<= student_version_~i~1 4)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,686 INFO L290 TraceCheckUtils]: 6: Hoare triple {76151#(<= student_version_~i~1 4)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,686 INFO L290 TraceCheckUtils]: 7: Hoare triple {76151#(<= student_version_~i~1 4)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,687 INFO L290 TraceCheckUtils]: 8: Hoare triple {76151#(<= student_version_~i~1 4)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76152#(<= student_version_~i~1 (+ student_version_~x~1 4))} is VALID [2022-04-27 22:28:36,687 INFO L290 TraceCheckUtils]: 9: Hoare triple {76152#(<= student_version_~i~1 (+ student_version_~x~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76153#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:28:36,688 INFO L290 TraceCheckUtils]: 10: Hoare triple {76153#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76154#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:28:36,688 INFO L290 TraceCheckUtils]: 11: Hoare triple {76154#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76155#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:28:36,688 INFO L290 TraceCheckUtils]: 12: Hoare triple {76155#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76156#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:28:36,689 INFO L290 TraceCheckUtils]: 13: Hoare triple {76156#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76107#false} is VALID [2022-04-27 22:28:36,689 INFO L290 TraceCheckUtils]: 14: Hoare triple {76107#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:36,689 INFO L290 TraceCheckUtils]: 15: Hoare triple {76107#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {76107#false} is VALID [2022-04-27 22:28:36,689 INFO L290 TraceCheckUtils]: 16: Hoare triple {76107#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:36,689 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {76107#false} {76106#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {76107#false} is VALID [2022-04-27 22:28:36,689 INFO L272 TraceCheckUtils]: 0: Hoare triple {76106#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76146#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 1: Hoare triple {76146#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 2: Hoare triple {76106#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {76106#true} {76106#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L272 TraceCheckUtils]: 4: Hoare triple {76106#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 5: Hoare triple {76106#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 6: Hoare triple {76106#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L272 TraceCheckUtils]: 7: Hoare triple {76106#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {76106#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 10: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 11: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 12: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {76106#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 14: Hoare triple {76106#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:36,690 INFO L290 TraceCheckUtils]: 15: Hoare triple {76106#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 16: Hoare triple {76106#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 17: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 18: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 19: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 20: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 21: Hoare triple {76106#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 22: Hoare triple {76106#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 23: Hoare triple {76106#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {76106#true} {76106#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L290 TraceCheckUtils]: 25: Hoare triple {76106#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {76106#true} is VALID [2022-04-27 22:28:36,691 INFO L272 TraceCheckUtils]: 26: Hoare triple {76106#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:36,692 INFO L290 TraceCheckUtils]: 27: Hoare triple {76106#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {76147#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:28:36,692 INFO L290 TraceCheckUtils]: 28: Hoare triple {76147#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76148#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:28:36,693 INFO L290 TraceCheckUtils]: 29: Hoare triple {76148#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76149#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:28:36,693 INFO L290 TraceCheckUtils]: 30: Hoare triple {76149#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76150#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:28:36,693 INFO L290 TraceCheckUtils]: 31: Hoare triple {76150#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,694 INFO L290 TraceCheckUtils]: 32: Hoare triple {76151#(<= student_version_~i~1 4)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,694 INFO L290 TraceCheckUtils]: 33: Hoare triple {76151#(<= student_version_~i~1 4)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,694 INFO L290 TraceCheckUtils]: 34: Hoare triple {76151#(<= student_version_~i~1 4)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:36,695 INFO L290 TraceCheckUtils]: 35: Hoare triple {76151#(<= student_version_~i~1 4)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76152#(<= student_version_~i~1 (+ student_version_~x~1 4))} is VALID [2022-04-27 22:28:36,695 INFO L290 TraceCheckUtils]: 36: Hoare triple {76152#(<= student_version_~i~1 (+ student_version_~x~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76153#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:28:36,696 INFO L290 TraceCheckUtils]: 37: Hoare triple {76153#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76154#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:28:36,696 INFO L290 TraceCheckUtils]: 38: Hoare triple {76154#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76155#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:28:36,697 INFO L290 TraceCheckUtils]: 39: Hoare triple {76155#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76156#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:28:36,697 INFO L290 TraceCheckUtils]: 40: Hoare triple {76156#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76107#false} is VALID [2022-04-27 22:28:36,697 INFO L290 TraceCheckUtils]: 41: Hoare triple {76107#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:36,697 INFO L290 TraceCheckUtils]: 42: Hoare triple {76107#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {76107#false} is VALID [2022-04-27 22:28:36,697 INFO L290 TraceCheckUtils]: 43: Hoare triple {76107#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:36,697 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {76107#false} {76106#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {76107#false} is VALID [2022-04-27 22:28:36,697 INFO L290 TraceCheckUtils]: 45: Hoare triple {76107#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {76107#false} is VALID [2022-04-27 22:28:36,697 INFO L272 TraceCheckUtils]: 46: Hoare triple {76107#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {76107#false} is VALID [2022-04-27 22:28:36,697 INFO L290 TraceCheckUtils]: 47: Hoare triple {76107#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {76107#false} is VALID [2022-04-27 22:28:36,698 INFO L290 TraceCheckUtils]: 48: Hoare triple {76107#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:36,698 INFO L290 TraceCheckUtils]: 49: Hoare triple {76107#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:36,698 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:28:36,698 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:28:36,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [257188483] [2022-04-27 22:28:36,698 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [257188483] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:28:36,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [728257703] [2022-04-27 22:28:36,698 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:28:36,698 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:28:36,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:28:36,699 INFO L229 MonitoredProcess]: Starting monitored process 50 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:28:36,700 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (50)] Waiting until timeout for monitored process [2022-04-27 22:28:36,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:36,779 INFO L263 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 22:28:36,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:36,789 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:28:37,011 INFO L272 TraceCheckUtils]: 0: Hoare triple {76106#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 1: Hoare triple {76106#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {76106#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {76106#true} {76106#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L272 TraceCheckUtils]: 4: Hoare triple {76106#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 5: Hoare triple {76106#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 6: Hoare triple {76106#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L272 TraceCheckUtils]: 7: Hoare triple {76106#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 8: Hoare triple {76106#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 9: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 10: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 11: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 12: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,012 INFO L290 TraceCheckUtils]: 13: Hoare triple {76106#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 14: Hoare triple {76106#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 15: Hoare triple {76106#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 16: Hoare triple {76106#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 17: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 18: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 19: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 21: Hoare triple {76106#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 22: Hoare triple {76106#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 23: Hoare triple {76106#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {76106#true} {76106#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L290 TraceCheckUtils]: 25: Hoare triple {76106#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {76106#true} is VALID [2022-04-27 22:28:37,013 INFO L272 TraceCheckUtils]: 26: Hoare triple {76106#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,014 INFO L290 TraceCheckUtils]: 27: Hoare triple {76106#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {76147#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:28:37,014 INFO L290 TraceCheckUtils]: 28: Hoare triple {76147#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76148#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:28:37,015 INFO L290 TraceCheckUtils]: 29: Hoare triple {76148#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76149#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:28:37,015 INFO L290 TraceCheckUtils]: 30: Hoare triple {76149#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76150#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:28:37,015 INFO L290 TraceCheckUtils]: 31: Hoare triple {76150#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,016 INFO L290 TraceCheckUtils]: 32: Hoare triple {76151#(<= student_version_~i~1 4)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,016 INFO L290 TraceCheckUtils]: 33: Hoare triple {76151#(<= student_version_~i~1 4)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,016 INFO L290 TraceCheckUtils]: 34: Hoare triple {76151#(<= student_version_~i~1 4)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,017 INFO L290 TraceCheckUtils]: 35: Hoare triple {76151#(<= student_version_~i~1 4)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76265#(and (<= student_version_~i~1 4) (<= 0 student_version_~x~1))} is VALID [2022-04-27 22:28:37,017 INFO L290 TraceCheckUtils]: 36: Hoare triple {76265#(and (<= student_version_~i~1 4) (<= 0 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76269#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 4))} is VALID [2022-04-27 22:28:37,018 INFO L290 TraceCheckUtils]: 37: Hoare triple {76269#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76273#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 4))} is VALID [2022-04-27 22:28:37,018 INFO L290 TraceCheckUtils]: 38: Hoare triple {76273#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76277#(and (<= student_version_~i~1 4) (<= 3 student_version_~x~1))} is VALID [2022-04-27 22:28:37,018 INFO L290 TraceCheckUtils]: 39: Hoare triple {76277#(and (<= student_version_~i~1 4) (<= 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76281#(and (<= 4 student_version_~x~1) (<= student_version_~i~1 4))} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 40: Hoare triple {76281#(and (<= 4 student_version_~x~1) (<= student_version_~i~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 41: Hoare triple {76107#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 42: Hoare triple {76107#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 43: Hoare triple {76107#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {76107#false} {76106#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 45: Hoare triple {76107#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L272 TraceCheckUtils]: 46: Hoare triple {76107#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 47: Hoare triple {76107#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 48: Hoare triple {76107#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,019 INFO L290 TraceCheckUtils]: 49: Hoare triple {76107#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,020 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:28:37,020 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:28:37,184 INFO L290 TraceCheckUtils]: 49: Hoare triple {76107#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,184 INFO L290 TraceCheckUtils]: 48: Hoare triple {76107#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L290 TraceCheckUtils]: 47: Hoare triple {76107#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L272 TraceCheckUtils]: 46: Hoare triple {76107#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L290 TraceCheckUtils]: 45: Hoare triple {76107#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {76107#false} {76106#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L290 TraceCheckUtils]: 43: Hoare triple {76107#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L290 TraceCheckUtils]: 42: Hoare triple {76107#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L290 TraceCheckUtils]: 41: Hoare triple {76107#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {76107#false} is VALID [2022-04-27 22:28:37,185 INFO L290 TraceCheckUtils]: 40: Hoare triple {76156#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76107#false} is VALID [2022-04-27 22:28:37,186 INFO L290 TraceCheckUtils]: 39: Hoare triple {76155#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76156#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:28:37,186 INFO L290 TraceCheckUtils]: 38: Hoare triple {76154#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76155#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:28:37,187 INFO L290 TraceCheckUtils]: 37: Hoare triple {76153#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76154#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:28:37,187 INFO L290 TraceCheckUtils]: 36: Hoare triple {76152#(<= student_version_~i~1 (+ student_version_~x~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76153#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:28:37,187 INFO L290 TraceCheckUtils]: 35: Hoare triple {76151#(<= student_version_~i~1 4)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {76152#(<= student_version_~i~1 (+ student_version_~x~1 4))} is VALID [2022-04-27 22:28:37,188 INFO L290 TraceCheckUtils]: 34: Hoare triple {76151#(<= student_version_~i~1 4)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,188 INFO L290 TraceCheckUtils]: 33: Hoare triple {76151#(<= student_version_~i~1 4)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,188 INFO L290 TraceCheckUtils]: 32: Hoare triple {76151#(<= student_version_~i~1 4)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,189 INFO L290 TraceCheckUtils]: 31: Hoare triple {76150#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76151#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:28:37,189 INFO L290 TraceCheckUtils]: 30: Hoare triple {76149#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76150#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:28:37,190 INFO L290 TraceCheckUtils]: 29: Hoare triple {76148#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76149#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:28:37,190 INFO L290 TraceCheckUtils]: 28: Hoare triple {76147#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {76148#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:28:37,190 INFO L290 TraceCheckUtils]: 27: Hoare triple {76106#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {76147#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:28:37,190 INFO L272 TraceCheckUtils]: 26: Hoare triple {76106#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 25: Hoare triple {76106#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {76106#true} {76106#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 23: Hoare triple {76106#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 22: Hoare triple {76106#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 21: Hoare triple {76106#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 20: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 19: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 18: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {76106#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 16: Hoare triple {76106#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 15: Hoare triple {76106#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 14: Hoare triple {76106#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 13: Hoare triple {76106#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,191 INFO L290 TraceCheckUtils]: 12: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 11: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 10: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 9: Hoare triple {76106#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {76106#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L272 TraceCheckUtils]: 7: Hoare triple {76106#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 6: Hoare triple {76106#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 5: Hoare triple {76106#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L272 TraceCheckUtils]: 4: Hoare triple {76106#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {76106#true} {76106#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 2: Hoare triple {76106#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {76106#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L272 TraceCheckUtils]: 0: Hoare triple {76106#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76106#true} is VALID [2022-04-27 22:28:37,192 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:28:37,193 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [728257703] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:28:37,193 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:28:37,193 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 12] total 18 [2022-04-27 22:28:37,193 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1970342485] [2022-04-27 22:28:37,193 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:28:37,193 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 50 [2022-04-27 22:28:37,193 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:28:37,193 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:28:37,222 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:37,222 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 22:28:37,222 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:28:37,222 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 22:28:37,223 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=223, Unknown=0, NotChecked=0, Total=306 [2022-04-27 22:28:37,223 INFO L87 Difference]: Start difference. First operand 420 states and 480 transitions. Second operand has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:28:41,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:41,766 INFO L93 Difference]: Finished difference Result 540 states and 625 transitions. [2022-04-27 22:28:41,766 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 22:28:41,767 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 50 [2022-04-27 22:28:41,767 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:28:41,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:28:41,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 95 transitions. [2022-04-27 22:28:41,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:28:41,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 95 transitions. [2022-04-27 22:28:41,768 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 95 transitions. [2022-04-27 22:28:41,837 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:41,850 INFO L225 Difference]: With dead ends: 540 [2022-04-27 22:28:41,850 INFO L226 Difference]: Without dead ends: 502 [2022-04-27 22:28:41,853 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 100 SyntacticMatches, 1 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 268 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=372, Invalid=1034, Unknown=0, NotChecked=0, Total=1406 [2022-04-27 22:28:41,853 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 123 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 327 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 128 SdHoareTripleChecker+Valid, 76 SdHoareTripleChecker+Invalid, 349 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 327 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:28:41,853 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [128 Valid, 76 Invalid, 349 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 327 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:28:41,853 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 502 states. [2022-04-27 22:28:45,976 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 502 to 478. [2022-04-27 22:28:45,976 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:28:45,977 INFO L82 GeneralOperation]: Start isEquivalent. First operand 502 states. Second operand has 478 states, 418 states have (on average 1.1650717703349283) internal successors, (487), 452 states have internal predecessors, (487), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:45,977 INFO L74 IsIncluded]: Start isIncluded. First operand 502 states. Second operand has 478 states, 418 states have (on average 1.1650717703349283) internal successors, (487), 452 states have internal predecessors, (487), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:45,977 INFO L87 Difference]: Start difference. First operand 502 states. Second operand has 478 states, 418 states have (on average 1.1650717703349283) internal successors, (487), 452 states have internal predecessors, (487), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:45,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:45,987 INFO L93 Difference]: Finished difference Result 502 states and 571 transitions. [2022-04-27 22:28:45,987 INFO L276 IsEmpty]: Start isEmpty. Operand 502 states and 571 transitions. [2022-04-27 22:28:45,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:45,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:45,989 INFO L74 IsIncluded]: Start isIncluded. First operand has 478 states, 418 states have (on average 1.1650717703349283) internal successors, (487), 452 states have internal predecessors, (487), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) Second operand 502 states. [2022-04-27 22:28:45,990 INFO L87 Difference]: Start difference. First operand has 478 states, 418 states have (on average 1.1650717703349283) internal successors, (487), 452 states have internal predecessors, (487), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) Second operand 502 states. [2022-04-27 22:28:46,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:46,000 INFO L93 Difference]: Finished difference Result 502 states and 571 transitions. [2022-04-27 22:28:46,000 INFO L276 IsEmpty]: Start isEmpty. Operand 502 states and 571 transitions. [2022-04-27 22:28:46,001 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:46,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:46,001 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:28:46,001 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:28:46,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 478 states, 418 states have (on average 1.1650717703349283) internal successors, (487), 452 states have internal predecessors, (487), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:46,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 478 states to 478 states and 547 transitions. [2022-04-27 22:28:46,013 INFO L78 Accepts]: Start accepts. Automaton has 478 states and 547 transitions. Word has length 50 [2022-04-27 22:28:46,013 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:28:46,013 INFO L495 AbstractCegarLoop]: Abstraction has 478 states and 547 transitions. [2022-04-27 22:28:46,013 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:28:46,013 INFO L276 IsEmpty]: Start isEmpty. Operand 478 states and 547 transitions. [2022-04-27 22:28:46,015 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 22:28:46,015 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:28:46,015 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:28:46,032 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (50)] Forceful destruction successful, exit code 0 [2022-04-27 22:28:46,231 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 50 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable58 [2022-04-27 22:28:46,232 INFO L420 AbstractCegarLoop]: === Iteration 60 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:28:46,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:28:46,232 INFO L85 PathProgramCache]: Analyzing trace with hash 1468811041, now seen corresponding path program 50 times [2022-04-27 22:28:46,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:28:46,232 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1329079401] [2022-04-27 22:28:46,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:28:46,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:28:46,248 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:46,255 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:28:46,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:46,258 INFO L290 TraceCheckUtils]: 0: Hoare triple {79017#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {78977#true} is VALID [2022-04-27 22:28:46,258 INFO L290 TraceCheckUtils]: 1: Hoare triple {78977#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,258 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {78977#true} {78977#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,258 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:28:46,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:46,342 INFO L290 TraceCheckUtils]: 0: Hoare triple {78977#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {79018#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:28:46,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {79018#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79019#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:28:46,343 INFO L290 TraceCheckUtils]: 2: Hoare triple {79019#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79020#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:28:46,343 INFO L290 TraceCheckUtils]: 3: Hoare triple {79020#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79021#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:28:46,344 INFO L290 TraceCheckUtils]: 4: Hoare triple {79021#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,344 INFO L290 TraceCheckUtils]: 5: Hoare triple {79022#(<= correct_version_~i~0 4)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,344 INFO L290 TraceCheckUtils]: 6: Hoare triple {79022#(<= correct_version_~i~0 4)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,344 INFO L290 TraceCheckUtils]: 7: Hoare triple {79022#(<= correct_version_~i~0 4)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,345 INFO L290 TraceCheckUtils]: 8: Hoare triple {79022#(<= correct_version_~i~0 4)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79023#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} is VALID [2022-04-27 22:28:46,345 INFO L290 TraceCheckUtils]: 9: Hoare triple {79023#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79024#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:28:46,346 INFO L290 TraceCheckUtils]: 10: Hoare triple {79024#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79025#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:28:46,346 INFO L290 TraceCheckUtils]: 11: Hoare triple {79025#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79026#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:28:46,347 INFO L290 TraceCheckUtils]: 12: Hoare triple {79026#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79027#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:28:46,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {79027#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {78978#false} is VALID [2022-04-27 22:28:46,347 INFO L290 TraceCheckUtils]: 14: Hoare triple {78978#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,347 INFO L290 TraceCheckUtils]: 15: Hoare triple {78978#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {78978#false} is VALID [2022-04-27 22:28:46,347 INFO L290 TraceCheckUtils]: 16: Hoare triple {78978#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,347 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {78978#false} {78977#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,347 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:28:46,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 0: Hoare triple {78977#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 1: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 3: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 4: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {78977#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 6: Hoare triple {78977#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {78977#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {78977#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 9: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 10: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 11: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,354 INFO L290 TraceCheckUtils]: 13: Hoare triple {78977#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,355 INFO L290 TraceCheckUtils]: 14: Hoare triple {78977#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {78977#true} is VALID [2022-04-27 22:28:46,355 INFO L290 TraceCheckUtils]: 15: Hoare triple {78977#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,355 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {78977#true} {78978#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,355 INFO L272 TraceCheckUtils]: 0: Hoare triple {78977#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {79017#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:28:46,355 INFO L290 TraceCheckUtils]: 1: Hoare triple {79017#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {78977#true} is VALID [2022-04-27 22:28:46,355 INFO L290 TraceCheckUtils]: 2: Hoare triple {78977#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,355 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78977#true} {78977#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,355 INFO L272 TraceCheckUtils]: 4: Hoare triple {78977#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,355 INFO L290 TraceCheckUtils]: 5: Hoare triple {78977#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,356 INFO L290 TraceCheckUtils]: 6: Hoare triple {78977#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,356 INFO L272 TraceCheckUtils]: 7: Hoare triple {78977#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,356 INFO L290 TraceCheckUtils]: 8: Hoare triple {78977#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {79018#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:28:46,356 INFO L290 TraceCheckUtils]: 9: Hoare triple {79018#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79019#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:28:46,357 INFO L290 TraceCheckUtils]: 10: Hoare triple {79019#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79020#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:28:46,357 INFO L290 TraceCheckUtils]: 11: Hoare triple {79020#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79021#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:28:46,358 INFO L290 TraceCheckUtils]: 12: Hoare triple {79021#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {79022#(<= correct_version_~i~0 4)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,358 INFO L290 TraceCheckUtils]: 14: Hoare triple {79022#(<= correct_version_~i~0 4)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,359 INFO L290 TraceCheckUtils]: 15: Hoare triple {79022#(<= correct_version_~i~0 4)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,359 INFO L290 TraceCheckUtils]: 16: Hoare triple {79022#(<= correct_version_~i~0 4)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79023#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} is VALID [2022-04-27 22:28:46,359 INFO L290 TraceCheckUtils]: 17: Hoare triple {79023#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79024#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:28:46,360 INFO L290 TraceCheckUtils]: 18: Hoare triple {79024#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79025#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:28:46,361 INFO L290 TraceCheckUtils]: 19: Hoare triple {79025#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79026#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:28:46,362 INFO L290 TraceCheckUtils]: 20: Hoare triple {79026#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79027#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:28:46,362 INFO L290 TraceCheckUtils]: 21: Hoare triple {79027#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {78978#false} is VALID [2022-04-27 22:28:46,362 INFO L290 TraceCheckUtils]: 22: Hoare triple {78978#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,362 INFO L290 TraceCheckUtils]: 23: Hoare triple {78978#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {78978#false} is VALID [2022-04-27 22:28:46,362 INFO L290 TraceCheckUtils]: 24: Hoare triple {78978#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,362 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {78978#false} {78977#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 26: Hoare triple {78978#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {78978#false} is VALID [2022-04-27 22:28:46,363 INFO L272 TraceCheckUtils]: 27: Hoare triple {78978#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 28: Hoare triple {78977#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 29: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 30: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 31: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 32: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 33: Hoare triple {78977#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 34: Hoare triple {78977#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 35: Hoare triple {78977#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 36: Hoare triple {78977#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 37: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 38: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 40: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 41: Hoare triple {78977#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 42: Hoare triple {78977#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {78977#true} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 43: Hoare triple {78977#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,364 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {78977#true} {78978#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 45: Hoare triple {78978#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {78978#false} is VALID [2022-04-27 22:28:46,364 INFO L272 TraceCheckUtils]: 46: Hoare triple {78978#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {78978#false} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 47: Hoare triple {78978#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {78978#false} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 48: Hoare triple {78978#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,364 INFO L290 TraceCheckUtils]: 49: Hoare triple {78978#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,364 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:28:46,364 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:28:46,364 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1329079401] [2022-04-27 22:28:46,364 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1329079401] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:28:46,365 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [699226035] [2022-04-27 22:28:46,365 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:28:46,365 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:28:46,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:28:46,366 INFO L229 MonitoredProcess]: Starting monitored process 51 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:28:46,366 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (51)] Waiting until timeout for monitored process [2022-04-27 22:28:46,473 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:28:46,473 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:28:46,474 INFO L263 TraceCheckSpWp]: Trace formula consists of 243 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 22:28:46,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:46,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:28:46,700 INFO L272 TraceCheckUtils]: 0: Hoare triple {78977#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L290 TraceCheckUtils]: 1: Hoare triple {78977#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L290 TraceCheckUtils]: 2: Hoare triple {78977#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78977#true} {78977#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L272 TraceCheckUtils]: 4: Hoare triple {78977#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L290 TraceCheckUtils]: 5: Hoare triple {78977#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L290 TraceCheckUtils]: 6: Hoare triple {78977#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L272 TraceCheckUtils]: 7: Hoare triple {78977#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {78977#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {79018#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:28:46,702 INFO L290 TraceCheckUtils]: 9: Hoare triple {79018#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79019#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:28:46,702 INFO L290 TraceCheckUtils]: 10: Hoare triple {79019#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79020#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:28:46,703 INFO L290 TraceCheckUtils]: 11: Hoare triple {79020#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79021#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:28:46,703 INFO L290 TraceCheckUtils]: 12: Hoare triple {79021#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {79022#(<= correct_version_~i~0 4)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,704 INFO L290 TraceCheckUtils]: 14: Hoare triple {79022#(<= correct_version_~i~0 4)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,704 INFO L290 TraceCheckUtils]: 15: Hoare triple {79022#(<= correct_version_~i~0 4)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {79022#(<= correct_version_~i~0 4)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79079#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 4))} is VALID [2022-04-27 22:28:46,705 INFO L290 TraceCheckUtils]: 17: Hoare triple {79079#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79083#(and (<= correct_version_~i~0 4) (<= 1 correct_version_~x~0))} is VALID [2022-04-27 22:28:46,705 INFO L290 TraceCheckUtils]: 18: Hoare triple {79083#(and (<= correct_version_~i~0 4) (<= 1 correct_version_~x~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79087#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 4))} is VALID [2022-04-27 22:28:46,706 INFO L290 TraceCheckUtils]: 19: Hoare triple {79087#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79091#(and (<= correct_version_~i~0 4) (<= 3 correct_version_~x~0))} is VALID [2022-04-27 22:28:46,706 INFO L290 TraceCheckUtils]: 20: Hoare triple {79091#(and (<= correct_version_~i~0 4) (<= 3 correct_version_~x~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79095#(and (<= 4 correct_version_~x~0) (<= correct_version_~i~0 4))} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 21: Hoare triple {79095#(and (<= 4 correct_version_~x~0) (<= correct_version_~i~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 22: Hoare triple {78978#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 23: Hoare triple {78978#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 24: Hoare triple {78978#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {78978#false} {78977#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 26: Hoare triple {78978#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L272 TraceCheckUtils]: 27: Hoare triple {78978#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 28: Hoare triple {78978#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 29: Hoare triple {78978#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78978#false} is VALID [2022-04-27 22:28:46,707 INFO L290 TraceCheckUtils]: 30: Hoare triple {78978#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 31: Hoare triple {78978#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 32: Hoare triple {78978#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 33: Hoare triple {78978#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 34: Hoare triple {78978#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 35: Hoare triple {78978#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 36: Hoare triple {78978#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 37: Hoare triple {78978#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 38: Hoare triple {78978#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 39: Hoare triple {78978#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 40: Hoare triple {78978#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 41: Hoare triple {78978#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 42: Hoare triple {78978#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 43: Hoare triple {78978#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {78978#false} {78978#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L290 TraceCheckUtils]: 45: Hoare triple {78978#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {78978#false} is VALID [2022-04-27 22:28:46,708 INFO L272 TraceCheckUtils]: 46: Hoare triple {78978#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {78978#false} is VALID [2022-04-27 22:28:46,709 INFO L290 TraceCheckUtils]: 47: Hoare triple {78978#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {78978#false} is VALID [2022-04-27 22:28:46,709 INFO L290 TraceCheckUtils]: 48: Hoare triple {78978#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,709 INFO L290 TraceCheckUtils]: 49: Hoare triple {78978#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,709 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:28:46,709 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:28:46,869 INFO L290 TraceCheckUtils]: 49: Hoare triple {78978#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,869 INFO L290 TraceCheckUtils]: 48: Hoare triple {78978#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,869 INFO L290 TraceCheckUtils]: 47: Hoare triple {78978#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {78978#false} is VALID [2022-04-27 22:28:46,869 INFO L272 TraceCheckUtils]: 46: Hoare triple {78978#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {78978#false} is VALID [2022-04-27 22:28:46,869 INFO L290 TraceCheckUtils]: 45: Hoare triple {78978#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {78978#false} is VALID [2022-04-27 22:28:46,869 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {78977#true} {78978#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,869 INFO L290 TraceCheckUtils]: 43: Hoare triple {78977#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,869 INFO L290 TraceCheckUtils]: 42: Hoare triple {78977#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 41: Hoare triple {78977#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 40: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 39: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 37: Hoare triple {78977#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 36: Hoare triple {78977#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 35: Hoare triple {78977#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 34: Hoare triple {78977#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 33: Hoare triple {78977#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 32: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 31: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 30: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 29: Hoare triple {78977#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {78977#true} is VALID [2022-04-27 22:28:46,870 INFO L290 TraceCheckUtils]: 28: Hoare triple {78977#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {78977#true} is VALID [2022-04-27 22:28:46,871 INFO L272 TraceCheckUtils]: 27: Hoare triple {78978#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,871 INFO L290 TraceCheckUtils]: 26: Hoare triple {78978#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {78978#false} is VALID [2022-04-27 22:28:46,871 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {78978#false} {78977#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {78978#false} is VALID [2022-04-27 22:28:46,871 INFO L290 TraceCheckUtils]: 24: Hoare triple {78978#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,871 INFO L290 TraceCheckUtils]: 23: Hoare triple {78978#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {78978#false} is VALID [2022-04-27 22:28:46,871 INFO L290 TraceCheckUtils]: 22: Hoare triple {78978#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {78978#false} is VALID [2022-04-27 22:28:46,871 INFO L290 TraceCheckUtils]: 21: Hoare triple {79027#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {78978#false} is VALID [2022-04-27 22:28:46,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {79026#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79027#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:28:46,872 INFO L290 TraceCheckUtils]: 19: Hoare triple {79025#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79026#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:28:46,872 INFO L290 TraceCheckUtils]: 18: Hoare triple {79024#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79025#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:28:46,873 INFO L290 TraceCheckUtils]: 17: Hoare triple {79023#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79024#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:28:46,873 INFO L290 TraceCheckUtils]: 16: Hoare triple {79022#(<= correct_version_~i~0 4)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {79023#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} is VALID [2022-04-27 22:28:46,873 INFO L290 TraceCheckUtils]: 15: Hoare triple {79022#(<= correct_version_~i~0 4)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {79022#(<= correct_version_~i~0 4)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,874 INFO L290 TraceCheckUtils]: 13: Hoare triple {79022#(<= correct_version_~i~0 4)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,874 INFO L290 TraceCheckUtils]: 12: Hoare triple {79021#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79022#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:28:46,874 INFO L290 TraceCheckUtils]: 11: Hoare triple {79020#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79021#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:28:46,875 INFO L290 TraceCheckUtils]: 10: Hoare triple {79019#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79020#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:28:46,875 INFO L290 TraceCheckUtils]: 9: Hoare triple {79018#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {79019#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:28:46,875 INFO L290 TraceCheckUtils]: 8: Hoare triple {78977#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {79018#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:28:46,876 INFO L272 TraceCheckUtils]: 7: Hoare triple {78977#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L290 TraceCheckUtils]: 6: Hoare triple {78977#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L290 TraceCheckUtils]: 5: Hoare triple {78977#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L272 TraceCheckUtils]: 4: Hoare triple {78977#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78977#true} {78977#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L290 TraceCheckUtils]: 2: Hoare triple {78977#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L290 TraceCheckUtils]: 1: Hoare triple {78977#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L272 TraceCheckUtils]: 0: Hoare triple {78977#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78977#true} is VALID [2022-04-27 22:28:46,876 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-04-27 22:28:46,876 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [699226035] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:28:46,876 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:28:46,876 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 12] total 18 [2022-04-27 22:28:46,877 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1621921363] [2022-04-27 22:28:46,877 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:28:46,877 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 17 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 50 [2022-04-27 22:28:46,877 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:28:46,877 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 17 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:46,902 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:46,902 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 22:28:46,902 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:28:46,902 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 22:28:46,902 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=223, Unknown=0, NotChecked=0, Total=306 [2022-04-27 22:28:46,902 INFO L87 Difference]: Start difference. First operand 478 states and 547 transitions. Second operand has 18 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 17 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:50,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:50,138 INFO L93 Difference]: Finished difference Result 857 states and 980 transitions. [2022-04-27 22:28:50,138 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 22:28:50,138 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 17 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 50 [2022-04-27 22:28:50,138 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:28:50,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 17 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:50,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 108 transitions. [2022-04-27 22:28:50,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 17 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:50,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 108 transitions. [2022-04-27 22:28:50,145 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 108 transitions. [2022-04-27 22:28:50,191 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:28:50,214 INFO L225 Difference]: With dead ends: 857 [2022-04-27 22:28:50,214 INFO L226 Difference]: Without dead ends: 560 [2022-04-27 22:28:50,229 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 100 SyntacticMatches, 1 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 268 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=372, Invalid=1034, Unknown=0, NotChecked=0, Total=1406 [2022-04-27 22:28:50,229 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 130 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 342 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 136 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 363 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 342 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:28:50,243 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [136 Valid, 81 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 342 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:28:50,244 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 560 states. [2022-04-27 22:28:53,147 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 560 to 536. [2022-04-27 22:28:53,148 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:28:53,148 INFO L82 GeneralOperation]: Start isEquivalent. First operand 560 states. Second operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:53,148 INFO L74 IsIncluded]: Start isIncluded. First operand 560 states. Second operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:53,149 INFO L87 Difference]: Start difference. First operand 560 states. Second operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:53,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:53,161 INFO L93 Difference]: Finished difference Result 560 states and 638 transitions. [2022-04-27 22:28:53,161 INFO L276 IsEmpty]: Start isEmpty. Operand 560 states and 638 transitions. [2022-04-27 22:28:53,162 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:53,162 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:53,163 INFO L74 IsIncluded]: Start isIncluded. First operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) Second operand 560 states. [2022-04-27 22:28:53,163 INFO L87 Difference]: Start difference. First operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) Second operand 560 states. [2022-04-27 22:28:53,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:28:53,175 INFO L93 Difference]: Finished difference Result 560 states and 638 transitions. [2022-04-27 22:28:53,175 INFO L276 IsEmpty]: Start isEmpty. Operand 560 states and 638 transitions. [2022-04-27 22:28:53,177 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:28:53,177 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:28:53,177 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:28:53,177 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:28:53,178 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (38), 20 states have call predecessors, (38), 20 states have call successors, (38) [2022-04-27 22:28:53,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 536 states to 536 states and 614 transitions. [2022-04-27 22:28:53,192 INFO L78 Accepts]: Start accepts. Automaton has 536 states and 614 transitions. Word has length 50 [2022-04-27 22:28:53,192 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:28:53,192 INFO L495 AbstractCegarLoop]: Abstraction has 536 states and 614 transitions. [2022-04-27 22:28:53,192 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 17 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:53,192 INFO L276 IsEmpty]: Start isEmpty. Operand 536 states and 614 transitions. [2022-04-27 22:28:53,195 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 22:28:53,195 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:28:53,195 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 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-27 22:28:53,212 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (51)] Forceful destruction successful, exit code 0 [2022-04-27 22:28:53,405 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 51 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable59 [2022-04-27 22:28:53,405 INFO L420 AbstractCegarLoop]: === Iteration 61 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:28:53,406 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:28:53,406 INFO L85 PathProgramCache]: Analyzing trace with hash -1466609972, now seen corresponding path program 51 times [2022-04-27 22:28:53,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:28:53,406 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [229464334] [2022-04-27 22:28:53,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:28:53,406 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:28:53,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:53,476 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:28:53,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:53,478 INFO L290 TraceCheckUtils]: 0: Hoare triple {82595#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {82548#true} is VALID [2022-04-27 22:28:53,478 INFO L290 TraceCheckUtils]: 1: Hoare triple {82548#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:53,479 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {82548#true} {82548#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:53,479 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:28:53,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:53,669 INFO L290 TraceCheckUtils]: 0: Hoare triple {82548#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,671 INFO L290 TraceCheckUtils]: 3: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:53,671 INFO L290 TraceCheckUtils]: 4: Hoare triple {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:28:53,672 INFO L290 TraceCheckUtils]: 5: Hoare triple {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:28:53,672 INFO L290 TraceCheckUtils]: 6: Hoare triple {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:28:53,673 INFO L290 TraceCheckUtils]: 7: Hoare triple {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,674 INFO L290 TraceCheckUtils]: 8: Hoare triple {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,674 INFO L290 TraceCheckUtils]: 9: Hoare triple {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:28:53,675 INFO L290 TraceCheckUtils]: 10: Hoare triple {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:53,675 INFO L290 TraceCheckUtils]: 11: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:53,676 INFO L290 TraceCheckUtils]: 12: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82605#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:28:53,676 INFO L290 TraceCheckUtils]: 13: Hoare triple {82605#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:53,677 INFO L290 TraceCheckUtils]: 14: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:53,677 INFO L290 TraceCheckUtils]: 15: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:53,678 INFO L290 TraceCheckUtils]: 16: Hoare triple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:53,679 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {82548#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {82571#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:28:53,679 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:28:53,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:53,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {82548#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:53,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:53,892 INFO L290 TraceCheckUtils]: 2: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:53,892 INFO L290 TraceCheckUtils]: 3: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:53,892 INFO L290 TraceCheckUtils]: 4: Hoare triple {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:28:53,893 INFO L290 TraceCheckUtils]: 5: Hoare triple {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:28:53,893 INFO L290 TraceCheckUtils]: 6: Hoare triple {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:28:53,894 INFO L290 TraceCheckUtils]: 7: Hoare triple {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:28:53,894 INFO L290 TraceCheckUtils]: 8: Hoare triple {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:28:53,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:28:53,895 INFO L290 TraceCheckUtils]: 10: Hoare triple {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:53,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:53,895 INFO L290 TraceCheckUtils]: 12: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82617#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:28:53,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {82617#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:53,896 INFO L290 TraceCheckUtils]: 14: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:53,896 INFO L290 TraceCheckUtils]: 15: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:53,896 INFO L290 TraceCheckUtils]: 16: Hoare triple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:53,897 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {82591#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:28:53,897 INFO L272 TraceCheckUtils]: 0: Hoare triple {82548#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82595#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:28:53,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {82595#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {82548#true} is VALID [2022-04-27 22:28:53,897 INFO L290 TraceCheckUtils]: 2: Hoare triple {82548#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:53,897 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {82548#true} {82548#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:53,897 INFO L272 TraceCheckUtils]: 4: Hoare triple {82548#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:53,898 INFO L290 TraceCheckUtils]: 5: Hoare triple {82548#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:53,898 INFO L290 TraceCheckUtils]: 6: Hoare triple {82548#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:53,898 INFO L272 TraceCheckUtils]: 7: Hoare triple {82548#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:53,898 INFO L290 TraceCheckUtils]: 8: Hoare triple {82548#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,898 INFO L290 TraceCheckUtils]: 9: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,898 INFO L290 TraceCheckUtils]: 10: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,899 INFO L290 TraceCheckUtils]: 11: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:53,899 INFO L290 TraceCheckUtils]: 12: Hoare triple {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:28:53,900 INFO L290 TraceCheckUtils]: 13: Hoare triple {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:28:53,900 INFO L290 TraceCheckUtils]: 14: Hoare triple {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:28:53,900 INFO L290 TraceCheckUtils]: 15: Hoare triple {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,901 INFO L290 TraceCheckUtils]: 16: Hoare triple {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:28:53,901 INFO L290 TraceCheckUtils]: 17: Hoare triple {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:28:53,901 INFO L290 TraceCheckUtils]: 18: Hoare triple {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:53,902 INFO L290 TraceCheckUtils]: 19: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:53,902 INFO L290 TraceCheckUtils]: 20: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82605#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:28:53,902 INFO L290 TraceCheckUtils]: 21: Hoare triple {82605#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:53,903 INFO L290 TraceCheckUtils]: 22: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:53,903 INFO L290 TraceCheckUtils]: 23: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:53,903 INFO L290 TraceCheckUtils]: 24: Hoare triple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:53,904 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {82548#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {82571#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:28:53,904 INFO L290 TraceCheckUtils]: 26: Hoare triple {82571#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:28:53,904 INFO L272 TraceCheckUtils]: 27: Hoare triple {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:53,904 INFO L290 TraceCheckUtils]: 28: Hoare triple {82548#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:53,905 INFO L290 TraceCheckUtils]: 29: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:53,905 INFO L290 TraceCheckUtils]: 30: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:53,905 INFO L290 TraceCheckUtils]: 31: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:53,906 INFO L290 TraceCheckUtils]: 32: Hoare triple {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:28:53,906 INFO L290 TraceCheckUtils]: 33: Hoare triple {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:28:53,907 INFO L290 TraceCheckUtils]: 34: Hoare triple {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:28:53,907 INFO L290 TraceCheckUtils]: 35: Hoare triple {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:28:53,908 INFO L290 TraceCheckUtils]: 36: Hoare triple {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:28:53,908 INFO L290 TraceCheckUtils]: 37: Hoare triple {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:28:53,908 INFO L290 TraceCheckUtils]: 38: Hoare triple {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:53,909 INFO L290 TraceCheckUtils]: 39: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:53,909 INFO L290 TraceCheckUtils]: 40: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82617#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:28:53,909 INFO L290 TraceCheckUtils]: 41: Hoare triple {82617#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:53,910 INFO L290 TraceCheckUtils]: 42: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:53,910 INFO L290 TraceCheckUtils]: 43: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:53,910 INFO L290 TraceCheckUtils]: 44: Hoare triple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:53,911 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {82591#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:28:53,911 INFO L290 TraceCheckUtils]: 46: Hoare triple {82591#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {82592#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:28:53,911 INFO L272 TraceCheckUtils]: 47: Hoare triple {82592#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {82593#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:28:53,912 INFO L290 TraceCheckUtils]: 48: Hoare triple {82593#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {82594#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:28:53,912 INFO L290 TraceCheckUtils]: 49: Hoare triple {82594#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {82549#false} is VALID [2022-04-27 22:28:53,912 INFO L290 TraceCheckUtils]: 50: Hoare triple {82549#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82549#false} is VALID [2022-04-27 22:28:53,912 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 0 proven. 74 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:28:53,912 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:28:53,913 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [229464334] [2022-04-27 22:28:53,913 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [229464334] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:28:53,913 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [488846237] [2022-04-27 22:28:53,913 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:28:53,913 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:28:53,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:28:53,914 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:28:53,915 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (52)] Waiting until timeout for monitored process [2022-04-27 22:28:54,027 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2022-04-27 22:28:54,027 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:28:54,028 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 59 conjunts are in the unsatisfiable core [2022-04-27 22:28:54,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:28:54,038 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:28:54,576 INFO L272 TraceCheckUtils]: 0: Hoare triple {82548#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,577 INFO L290 TraceCheckUtils]: 1: Hoare triple {82548#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {82548#true} is VALID [2022-04-27 22:28:54,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {82548#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {82548#true} {82548#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,577 INFO L272 TraceCheckUtils]: 4: Hoare triple {82548#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,577 INFO L290 TraceCheckUtils]: 5: Hoare triple {82548#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:54,577 INFO L290 TraceCheckUtils]: 6: Hoare triple {82548#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,577 INFO L272 TraceCheckUtils]: 7: Hoare triple {82548#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:54,578 INFO L290 TraceCheckUtils]: 8: Hoare triple {82548#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,578 INFO L290 TraceCheckUtils]: 10: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:54,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:28:54,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:28:54,580 INFO L290 TraceCheckUtils]: 14: Hoare triple {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:28:54,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,581 INFO L290 TraceCheckUtils]: 16: Hoare triple {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,581 INFO L290 TraceCheckUtils]: 17: Hoare triple {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:28:54,582 INFO L290 TraceCheckUtils]: 18: Hoare triple {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:54,582 INFO L290 TraceCheckUtils]: 19: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:54,582 INFO L290 TraceCheckUtils]: 20: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82683#(and (= correct_version_~y~0 0) (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:54,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {82683#(and (= correct_version_~y~0 0) (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:54,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:54,583 INFO L290 TraceCheckUtils]: 23: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:54,583 INFO L290 TraceCheckUtils]: 24: Hoare triple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:54,584 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {82548#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {82571#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:28:54,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {82571#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:28:54,585 INFO L272 TraceCheckUtils]: 27: Hoare triple {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:54,585 INFO L290 TraceCheckUtils]: 28: Hoare triple {82548#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:54,585 INFO L290 TraceCheckUtils]: 29: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:54,585 INFO L290 TraceCheckUtils]: 30: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:54,586 INFO L290 TraceCheckUtils]: 31: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:54,586 INFO L290 TraceCheckUtils]: 32: Hoare triple {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:28:54,587 INFO L290 TraceCheckUtils]: 33: Hoare triple {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:28:54,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:28:54,588 INFO L290 TraceCheckUtils]: 35: Hoare triple {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:28:54,588 INFO L290 TraceCheckUtils]: 36: Hoare triple {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:28:54,588 INFO L290 TraceCheckUtils]: 37: Hoare triple {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:28:54,589 INFO L290 TraceCheckUtils]: 38: Hoare triple {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:54,589 INFO L290 TraceCheckUtils]: 39: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:54,589 INFO L290 TraceCheckUtils]: 40: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82744#(and (= student_version_~y~1 0) (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:54,590 INFO L290 TraceCheckUtils]: 41: Hoare triple {82744#(and (= student_version_~y~1 0) (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:54,590 INFO L290 TraceCheckUtils]: 42: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:54,590 INFO L290 TraceCheckUtils]: 43: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:54,591 INFO L290 TraceCheckUtils]: 44: Hoare triple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:54,591 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {82760#(and (<= |main_#t~ret9| 8) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8) (<= 8 |main_#t~ret9|))} is VALID [2022-04-27 22:28:54,592 INFO L290 TraceCheckUtils]: 46: Hoare triple {82760#(and (<= |main_#t~ret9| 8) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8) (<= 8 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {82764#(and (<= main_~n_stones2~0 8) (<= 8 main_~n_stones2~0) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:28:54,592 INFO L272 TraceCheckUtils]: 47: Hoare triple {82764#(and (<= main_~n_stones2~0 8) (<= 8 main_~n_stones2~0) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {82768#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:28:54,593 INFO L290 TraceCheckUtils]: 48: Hoare triple {82768#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {82772#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:28:54,593 INFO L290 TraceCheckUtils]: 49: Hoare triple {82772#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {82549#false} is VALID [2022-04-27 22:28:54,593 INFO L290 TraceCheckUtils]: 50: Hoare triple {82549#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82549#false} is VALID [2022-04-27 22:28:54,593 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 0 proven. 74 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:28:54,593 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:28:54,935 INFO L290 TraceCheckUtils]: 50: Hoare triple {82549#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82549#false} is VALID [2022-04-27 22:28:54,935 INFO L290 TraceCheckUtils]: 49: Hoare triple {82772#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {82549#false} is VALID [2022-04-27 22:28:54,936 INFO L290 TraceCheckUtils]: 48: Hoare triple {82768#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {82772#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:28:54,936 INFO L272 TraceCheckUtils]: 47: Hoare triple {82592#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {82768#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:28:54,937 INFO L290 TraceCheckUtils]: 46: Hoare triple {82591#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {82592#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:28:54,937 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {82591#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:28:54,937 INFO L290 TraceCheckUtils]: 44: Hoare triple {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:54,938 INFO L290 TraceCheckUtils]: 43: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {82619#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:28:54,938 INFO L290 TraceCheckUtils]: 42: Hoare triple {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:54,938 INFO L290 TraceCheckUtils]: 41: Hoare triple {82617#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82618#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:28:54,939 INFO L290 TraceCheckUtils]: 40: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {82617#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:28:54,939 INFO L290 TraceCheckUtils]: 39: Hoare triple {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:54,939 INFO L290 TraceCheckUtils]: 38: Hoare triple {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82616#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:28:54,940 INFO L290 TraceCheckUtils]: 37: Hoare triple {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82615#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:28:54,940 INFO L290 TraceCheckUtils]: 36: Hoare triple {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82614#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:28:54,940 INFO L290 TraceCheckUtils]: 35: Hoare triple {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82613#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:28:54,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82612#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:28:54,941 INFO L290 TraceCheckUtils]: 33: Hoare triple {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82611#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:28:54,941 INFO L290 TraceCheckUtils]: 32: Hoare triple {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82610#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:28:54,942 INFO L290 TraceCheckUtils]: 31: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {82609#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:28:54,942 INFO L290 TraceCheckUtils]: 30: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:54,942 INFO L290 TraceCheckUtils]: 29: Hoare triple {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:54,943 INFO L290 TraceCheckUtils]: 28: Hoare triple {82548#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {82608#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:28:54,943 INFO L272 TraceCheckUtils]: 27: Hoare triple {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:54,943 INFO L290 TraceCheckUtils]: 26: Hoare triple {82571#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {82572#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:28:54,943 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {82548#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {82571#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:28:54,944 INFO L290 TraceCheckUtils]: 24: Hoare triple {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:54,944 INFO L290 TraceCheckUtils]: 23: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {82607#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:28:54,944 INFO L290 TraceCheckUtils]: 22: Hoare triple {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:54,945 INFO L290 TraceCheckUtils]: 21: Hoare triple {82605#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82606#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:28:54,945 INFO L290 TraceCheckUtils]: 20: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {82605#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:28:54,945 INFO L290 TraceCheckUtils]: 19: Hoare triple {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:54,945 INFO L290 TraceCheckUtils]: 18: Hoare triple {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82604#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:28:54,946 INFO L290 TraceCheckUtils]: 17: Hoare triple {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82603#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:28:54,946 INFO L290 TraceCheckUtils]: 16: Hoare triple {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82602#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,946 INFO L290 TraceCheckUtils]: 15: Hoare triple {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82601#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,947 INFO L290 TraceCheckUtils]: 14: Hoare triple {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82600#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:28:54,947 INFO L290 TraceCheckUtils]: 13: Hoare triple {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82599#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:28:54,948 INFO L290 TraceCheckUtils]: 12: Hoare triple {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82598#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:28:54,948 INFO L290 TraceCheckUtils]: 11: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {82597#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:28:54,948 INFO L290 TraceCheckUtils]: 10: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,948 INFO L290 TraceCheckUtils]: 9: Hoare triple {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,949 INFO L290 TraceCheckUtils]: 8: Hoare triple {82548#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {82596#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:28:54,949 INFO L272 TraceCheckUtils]: 7: Hoare triple {82548#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L290 TraceCheckUtils]: 6: Hoare triple {82548#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L290 TraceCheckUtils]: 5: Hoare triple {82548#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L272 TraceCheckUtils]: 4: Hoare triple {82548#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {82548#true} {82548#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L290 TraceCheckUtils]: 2: Hoare triple {82548#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L290 TraceCheckUtils]: 1: Hoare triple {82548#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L272 TraceCheckUtils]: 0: Hoare triple {82548#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {82548#true} is VALID [2022-04-27 22:28:54,949 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 0 proven. 74 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:28:54,951 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [488846237] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:28:54,951 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:28:54,951 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [33, 32, 32] total 39 [2022-04-27 22:28:54,951 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1875930563] [2022-04-27 22:28:54,951 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:28:54,952 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:28:54,952 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:28:54,952 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:28:54,978 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-27 22:28:54,978 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-04-27 22:28:54,978 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:28:54,978 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-04-27 22:28:54,978 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=85, Invalid=1397, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:28:54,978 INFO L87 Difference]: Start difference. First operand 536 states and 614 transitions. Second operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:02,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:02,881 INFO L93 Difference]: Finished difference Result 628 states and 719 transitions. [2022-04-27 22:29:02,881 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2022-04-27 22:29:02,882 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:29:02,882 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:29:02,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:02,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 190 transitions. [2022-04-27 22:29:02,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:02,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 190 transitions. [2022-04-27 22:29:02,884 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 190 transitions. [2022-04-27 22:29:02,977 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:29:02,996 INFO L225 Difference]: With dead ends: 628 [2022-04-27 22:29:02,996 INFO L226 Difference]: Without dead ends: 622 [2022-04-27 22:29:02,997 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 169 GetRequests, 96 SyntacticMatches, 5 SemanticMatches, 68 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 658 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=241, Invalid=4589, Unknown=0, NotChecked=0, Total=4830 [2022-04-27 22:29:02,998 INFO L413 NwaCegarLoop]: 98 mSDtfsCounter, 211 mSDsluCounter, 162 mSDsCounter, 0 mSdLazyCounter, 4758 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 217 SdHoareTripleChecker+Valid, 260 SdHoareTripleChecker+Invalid, 4806 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 4758 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:29:02,998 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [217 Valid, 260 Invalid, 4806 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 4758 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-04-27 22:29:02,998 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 622 states. [2022-04-27 22:29:05,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 622 to 552. [2022-04-27 22:29:05,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:29:05,779 INFO L82 GeneralOperation]: Start isEquivalent. First operand 622 states. Second operand has 552 states, 489 states have (on average 1.16359918200409) internal successors, (569), 525 states have internal predecessors, (569), 23 states have call successors, (23), 5 states have call predecessors, (23), 39 states have return successors, (41), 21 states have call predecessors, (41), 21 states have call successors, (41) [2022-04-27 22:29:05,779 INFO L74 IsIncluded]: Start isIncluded. First operand 622 states. Second operand has 552 states, 489 states have (on average 1.16359918200409) internal successors, (569), 525 states have internal predecessors, (569), 23 states have call successors, (23), 5 states have call predecessors, (23), 39 states have return successors, (41), 21 states have call predecessors, (41), 21 states have call successors, (41) [2022-04-27 22:29:05,779 INFO L87 Difference]: Start difference. First operand 622 states. Second operand has 552 states, 489 states have (on average 1.16359918200409) internal successors, (569), 525 states have internal predecessors, (569), 23 states have call successors, (23), 5 states have call predecessors, (23), 39 states have return successors, (41), 21 states have call predecessors, (41), 21 states have call successors, (41) [2022-04-27 22:29:05,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:05,794 INFO L93 Difference]: Finished difference Result 622 states and 713 transitions. [2022-04-27 22:29:05,794 INFO L276 IsEmpty]: Start isEmpty. Operand 622 states and 713 transitions. [2022-04-27 22:29:05,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:05,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:05,796 INFO L74 IsIncluded]: Start isIncluded. First operand has 552 states, 489 states have (on average 1.16359918200409) internal successors, (569), 525 states have internal predecessors, (569), 23 states have call successors, (23), 5 states have call predecessors, (23), 39 states have return successors, (41), 21 states have call predecessors, (41), 21 states have call successors, (41) Second operand 622 states. [2022-04-27 22:29:05,796 INFO L87 Difference]: Start difference. First operand has 552 states, 489 states have (on average 1.16359918200409) internal successors, (569), 525 states have internal predecessors, (569), 23 states have call successors, (23), 5 states have call predecessors, (23), 39 states have return successors, (41), 21 states have call predecessors, (41), 21 states have call successors, (41) Second operand 622 states. [2022-04-27 22:29:05,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:05,810 INFO L93 Difference]: Finished difference Result 622 states and 713 transitions. [2022-04-27 22:29:05,810 INFO L276 IsEmpty]: Start isEmpty. Operand 622 states and 713 transitions. [2022-04-27 22:29:05,812 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:05,812 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:05,812 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:29:05,812 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:29:05,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 552 states, 489 states have (on average 1.16359918200409) internal successors, (569), 525 states have internal predecessors, (569), 23 states have call successors, (23), 5 states have call predecessors, (23), 39 states have return successors, (41), 21 states have call predecessors, (41), 21 states have call successors, (41) [2022-04-27 22:29:05,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 552 states to 552 states and 633 transitions. [2022-04-27 22:29:05,827 INFO L78 Accepts]: Start accepts. Automaton has 552 states and 633 transitions. Word has length 51 [2022-04-27 22:29:05,827 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:29:05,828 INFO L495 AbstractCegarLoop]: Abstraction has 552 states and 633 transitions. [2022-04-27 22:29:05,828 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:05,828 INFO L276 IsEmpty]: Start isEmpty. Operand 552 states and 633 transitions. [2022-04-27 22:29:05,830 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 22:29:05,830 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:29:05,830 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:29:05,851 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (52)] Ended with exit code 0 [2022-04-27 22:29:06,051 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable60,52 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:06,052 INFO L420 AbstractCegarLoop]: === Iteration 62 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:29:06,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:29:06,052 INFO L85 PathProgramCache]: Analyzing trace with hash 2017377143, now seen corresponding path program 52 times [2022-04-27 22:29:06,052 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:29:06,052 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [400151027] [2022-04-27 22:29:06,052 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:29:06,052 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:29:06,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:06,139 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:29:06,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:06,141 INFO L290 TraceCheckUtils]: 0: Hoare triple {86038#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {85991#true} is VALID [2022-04-27 22:29:06,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {85991#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:06,141 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {85991#true} {85991#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:06,141 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:29:06,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:06,249 INFO L290 TraceCheckUtils]: 0: Hoare triple {85991#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,250 INFO L290 TraceCheckUtils]: 3: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,250 INFO L290 TraceCheckUtils]: 4: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:06,251 INFO L290 TraceCheckUtils]: 5: Hoare triple {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:06,251 INFO L290 TraceCheckUtils]: 6: Hoare triple {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:06,252 INFO L290 TraceCheckUtils]: 7: Hoare triple {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:06,252 INFO L290 TraceCheckUtils]: 8: Hoare triple {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,252 INFO L290 TraceCheckUtils]: 9: Hoare triple {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,253 INFO L290 TraceCheckUtils]: 10: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,253 INFO L290 TraceCheckUtils]: 11: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86046#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:29:06,253 INFO L290 TraceCheckUtils]: 12: Hoare triple {86046#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86047#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:29:06,254 INFO L290 TraceCheckUtils]: 13: Hoare triple {86047#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:06,254 INFO L290 TraceCheckUtils]: 14: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:06,254 INFO L290 TraceCheckUtils]: 15: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:06,254 INFO L290 TraceCheckUtils]: 16: Hoare triple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:06,255 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {85991#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {86014#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:06,255 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:29:06,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:06,422 INFO L290 TraceCheckUtils]: 0: Hoare triple {85991#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,422 INFO L290 TraceCheckUtils]: 1: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,422 INFO L290 TraceCheckUtils]: 2: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,423 INFO L290 TraceCheckUtils]: 3: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,423 INFO L290 TraceCheckUtils]: 4: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:06,423 INFO L290 TraceCheckUtils]: 5: Hoare triple {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:06,424 INFO L290 TraceCheckUtils]: 6: Hoare triple {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:06,424 INFO L290 TraceCheckUtils]: 7: Hoare triple {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:06,424 INFO L290 TraceCheckUtils]: 8: Hoare triple {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:29:06,425 INFO L290 TraceCheckUtils]: 9: Hoare triple {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:06,425 INFO L290 TraceCheckUtils]: 10: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:06,425 INFO L290 TraceCheckUtils]: 11: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86057#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:29:06,426 INFO L290 TraceCheckUtils]: 12: Hoare triple {86057#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86058#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:06,426 INFO L290 TraceCheckUtils]: 13: Hoare triple {86058#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:06,426 INFO L290 TraceCheckUtils]: 14: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:06,427 INFO L290 TraceCheckUtils]: 15: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:06,427 INFO L290 TraceCheckUtils]: 16: Hoare triple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:06,427 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {86034#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:06,428 INFO L272 TraceCheckUtils]: 0: Hoare triple {85991#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86038#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:29:06,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {86038#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {85991#true} is VALID [2022-04-27 22:29:06,428 INFO L290 TraceCheckUtils]: 2: Hoare triple {85991#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:06,428 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85991#true} {85991#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:06,428 INFO L272 TraceCheckUtils]: 4: Hoare triple {85991#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:06,428 INFO L290 TraceCheckUtils]: 5: Hoare triple {85991#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:06,428 INFO L290 TraceCheckUtils]: 6: Hoare triple {85991#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:06,428 INFO L272 TraceCheckUtils]: 7: Hoare triple {85991#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:06,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {85991#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,429 INFO L290 TraceCheckUtils]: 9: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,429 INFO L290 TraceCheckUtils]: 10: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,429 INFO L290 TraceCheckUtils]: 11: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,430 INFO L290 TraceCheckUtils]: 12: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:06,430 INFO L290 TraceCheckUtils]: 13: Hoare triple {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:06,431 INFO L290 TraceCheckUtils]: 14: Hoare triple {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:06,431 INFO L290 TraceCheckUtils]: 15: Hoare triple {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:06,431 INFO L290 TraceCheckUtils]: 16: Hoare triple {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,432 INFO L290 TraceCheckUtils]: 17: Hoare triple {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,432 INFO L290 TraceCheckUtils]: 18: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:06,432 INFO L290 TraceCheckUtils]: 19: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86046#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:29:06,433 INFO L290 TraceCheckUtils]: 20: Hoare triple {86046#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86047#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:29:06,433 INFO L290 TraceCheckUtils]: 21: Hoare triple {86047#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:06,433 INFO L290 TraceCheckUtils]: 22: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:06,433 INFO L290 TraceCheckUtils]: 23: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:06,434 INFO L290 TraceCheckUtils]: 24: Hoare triple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:06,434 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {85991#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {86014#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:06,434 INFO L290 TraceCheckUtils]: 26: Hoare triple {86014#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:06,434 INFO L272 TraceCheckUtils]: 27: Hoare triple {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:06,435 INFO L290 TraceCheckUtils]: 28: Hoare triple {85991#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,435 INFO L290 TraceCheckUtils]: 29: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,435 INFO L290 TraceCheckUtils]: 30: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,435 INFO L290 TraceCheckUtils]: 31: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:06,436 INFO L290 TraceCheckUtils]: 32: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:06,436 INFO L290 TraceCheckUtils]: 33: Hoare triple {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:06,436 INFO L290 TraceCheckUtils]: 34: Hoare triple {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:06,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:06,437 INFO L290 TraceCheckUtils]: 36: Hoare triple {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:29:06,438 INFO L290 TraceCheckUtils]: 37: Hoare triple {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:06,438 INFO L290 TraceCheckUtils]: 38: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:06,438 INFO L290 TraceCheckUtils]: 39: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86057#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:29:06,438 INFO L290 TraceCheckUtils]: 40: Hoare triple {86057#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86058#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:06,439 INFO L290 TraceCheckUtils]: 41: Hoare triple {86058#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:06,439 INFO L290 TraceCheckUtils]: 42: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:06,439 INFO L290 TraceCheckUtils]: 43: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:06,439 INFO L290 TraceCheckUtils]: 44: Hoare triple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:06,440 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {86034#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:06,441 INFO L290 TraceCheckUtils]: 46: Hoare triple {86034#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {86035#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:29:06,441 INFO L272 TraceCheckUtils]: 47: Hoare triple {86035#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {86036#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:29:06,441 INFO L290 TraceCheckUtils]: 48: Hoare triple {86036#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {86037#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:29:06,442 INFO L290 TraceCheckUtils]: 49: Hoare triple {86037#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {85992#false} is VALID [2022-04-27 22:29:06,442 INFO L290 TraceCheckUtils]: 50: Hoare triple {85992#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85992#false} is VALID [2022-04-27 22:29:06,442 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 48 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:29:06,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:29:06,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [400151027] [2022-04-27 22:29:06,442 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [400151027] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:29:06,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1239508222] [2022-04-27 22:29:06,442 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:29:06,442 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:06,442 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:29:06,443 INFO L229 MonitoredProcess]: Starting monitored process 53 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:29:06,445 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (53)] Waiting until timeout for monitored process [2022-04-27 22:29:06,510 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:29:06,510 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:29:06,512 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-27 22:29:06,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:06,520 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:29:07,177 INFO L272 TraceCheckUtils]: 0: Hoare triple {85991#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {85991#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {85991#true} is VALID [2022-04-27 22:29:07,177 INFO L290 TraceCheckUtils]: 2: Hoare triple {85991#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,177 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85991#true} {85991#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {85991#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,178 INFO L290 TraceCheckUtils]: 5: Hoare triple {85991#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:07,178 INFO L290 TraceCheckUtils]: 6: Hoare triple {85991#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,178 INFO L272 TraceCheckUtils]: 7: Hoare triple {85991#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:07,178 INFO L290 TraceCheckUtils]: 8: Hoare triple {85991#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,178 INFO L290 TraceCheckUtils]: 9: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,179 INFO L290 TraceCheckUtils]: 10: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,179 INFO L290 TraceCheckUtils]: 11: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,179 INFO L290 TraceCheckUtils]: 12: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:07,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:07,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:07,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:07,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,181 INFO L290 TraceCheckUtils]: 17: Hoare triple {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,181 INFO L290 TraceCheckUtils]: 19: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86121#(and (<= correct_version_~j~0 6) (= correct_version_~y~0 0) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,182 INFO L290 TraceCheckUtils]: 20: Hoare triple {86121#(and (<= correct_version_~j~0 6) (= correct_version_~y~0 0) (<= 6 correct_version_~j~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86125#(and (<= correct_version_~j~0 6) (= correct_version_~j~0 correct_version_~y~0) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,182 INFO L290 TraceCheckUtils]: 21: Hoare triple {86125#(and (<= correct_version_~j~0 6) (= correct_version_~j~0 correct_version_~y~0) (<= 6 correct_version_~j~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:07,182 INFO L290 TraceCheckUtils]: 22: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:07,183 INFO L290 TraceCheckUtils]: 23: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:07,183 INFO L290 TraceCheckUtils]: 24: Hoare triple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:07,183 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {85991#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {86014#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:07,184 INFO L290 TraceCheckUtils]: 26: Hoare triple {86014#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:07,184 INFO L272 TraceCheckUtils]: 27: Hoare triple {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:07,184 INFO L290 TraceCheckUtils]: 28: Hoare triple {85991#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,184 INFO L290 TraceCheckUtils]: 29: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,185 INFO L290 TraceCheckUtils]: 30: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,185 INFO L290 TraceCheckUtils]: 31: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,185 INFO L290 TraceCheckUtils]: 32: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:07,186 INFO L290 TraceCheckUtils]: 33: Hoare triple {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:07,186 INFO L290 TraceCheckUtils]: 34: Hoare triple {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:07,186 INFO L290 TraceCheckUtils]: 35: Hoare triple {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:07,187 INFO L290 TraceCheckUtils]: 36: Hoare triple {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:29:07,187 INFO L290 TraceCheckUtils]: 37: Hoare triple {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:07,187 INFO L290 TraceCheckUtils]: 38: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:07,188 INFO L290 TraceCheckUtils]: 39: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86183#(and (= student_version_~y~1 0) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:07,188 INFO L290 TraceCheckUtils]: 40: Hoare triple {86183#(and (= student_version_~y~1 0) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86187#(and (<= student_version_~j~1 6) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:07,188 INFO L290 TraceCheckUtils]: 41: Hoare triple {86187#(and (<= student_version_~j~1 6) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0) (<= 6 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:07,188 INFO L290 TraceCheckUtils]: 42: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:07,189 INFO L290 TraceCheckUtils]: 43: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:07,189 INFO L290 TraceCheckUtils]: 44: Hoare triple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:07,189 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {86203#(and (<= main_~n_stones1~0 12) (<= 12 |main_#t~ret9|) (<= |main_#t~ret9| 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:07,190 INFO L290 TraceCheckUtils]: 46: Hoare triple {86203#(and (<= main_~n_stones1~0 12) (<= 12 |main_#t~ret9|) (<= |main_#t~ret9| 12) (<= 12 main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {86207#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones2~0) (<= main_~n_stones2~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:07,190 INFO L272 TraceCheckUtils]: 47: Hoare triple {86207#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones2~0) (<= main_~n_stones2~0 12) (<= 12 main_~n_stones1~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {86211#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:29:07,190 INFO L290 TraceCheckUtils]: 48: Hoare triple {86211#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {86215#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:29:07,191 INFO L290 TraceCheckUtils]: 49: Hoare triple {86215#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {85992#false} is VALID [2022-04-27 22:29:07,191 INFO L290 TraceCheckUtils]: 50: Hoare triple {85992#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85992#false} is VALID [2022-04-27 22:29:07,191 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 48 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:29:07,191 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:29:07,527 INFO L290 TraceCheckUtils]: 50: Hoare triple {85992#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85992#false} is VALID [2022-04-27 22:29:07,527 INFO L290 TraceCheckUtils]: 49: Hoare triple {86215#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {85992#false} is VALID [2022-04-27 22:29:07,528 INFO L290 TraceCheckUtils]: 48: Hoare triple {86211#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {86215#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:29:07,528 INFO L272 TraceCheckUtils]: 47: Hoare triple {86035#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {86211#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:29:07,528 INFO L290 TraceCheckUtils]: 46: Hoare triple {86034#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {86035#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:29:07,529 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {86034#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:07,529 INFO L290 TraceCheckUtils]: 44: Hoare triple {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:07,529 INFO L290 TraceCheckUtils]: 43: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {86060#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:07,530 INFO L290 TraceCheckUtils]: 42: Hoare triple {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:07,530 INFO L290 TraceCheckUtils]: 41: Hoare triple {86058#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86059#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:07,530 INFO L290 TraceCheckUtils]: 40: Hoare triple {86057#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86058#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:07,531 INFO L290 TraceCheckUtils]: 39: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {86057#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:29:07,531 INFO L290 TraceCheckUtils]: 38: Hoare triple {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:07,531 INFO L290 TraceCheckUtils]: 37: Hoare triple {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86056#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:29:07,532 INFO L290 TraceCheckUtils]: 36: Hoare triple {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86055#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:29:07,532 INFO L290 TraceCheckUtils]: 35: Hoare triple {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86054#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:07,532 INFO L290 TraceCheckUtils]: 34: Hoare triple {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86053#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:07,533 INFO L290 TraceCheckUtils]: 33: Hoare triple {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86052#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:07,533 INFO L290 TraceCheckUtils]: 32: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {86051#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:07,533 INFO L290 TraceCheckUtils]: 31: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,534 INFO L290 TraceCheckUtils]: 30: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,534 INFO L290 TraceCheckUtils]: 29: Hoare triple {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,534 INFO L290 TraceCheckUtils]: 28: Hoare triple {85991#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {86050#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:07,534 INFO L272 TraceCheckUtils]: 27: Hoare triple {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:07,534 INFO L290 TraceCheckUtils]: 26: Hoare triple {86014#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {86015#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:07,535 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {85991#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {86014#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:07,535 INFO L290 TraceCheckUtils]: 24: Hoare triple {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:07,535 INFO L290 TraceCheckUtils]: 23: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {86049#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:07,536 INFO L290 TraceCheckUtils]: 22: Hoare triple {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:07,536 INFO L290 TraceCheckUtils]: 21: Hoare triple {86047#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86048#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:07,536 INFO L290 TraceCheckUtils]: 20: Hoare triple {86046#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86047#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:29:07,537 INFO L290 TraceCheckUtils]: 19: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {86046#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:29:07,537 INFO L290 TraceCheckUtils]: 18: Hoare triple {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,537 INFO L290 TraceCheckUtils]: 17: Hoare triple {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86045#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,538 INFO L290 TraceCheckUtils]: 16: Hoare triple {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86044#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,538 INFO L290 TraceCheckUtils]: 15: Hoare triple {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86043#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:07,538 INFO L290 TraceCheckUtils]: 14: Hoare triple {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86042#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:07,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86041#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:07,539 INFO L290 TraceCheckUtils]: 12: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {86040#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:07,539 INFO L290 TraceCheckUtils]: 11: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,540 INFO L290 TraceCheckUtils]: 10: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,540 INFO L290 TraceCheckUtils]: 9: Hoare triple {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,540 INFO L290 TraceCheckUtils]: 8: Hoare triple {85991#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {86039#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:07,540 INFO L272 TraceCheckUtils]: 7: Hoare triple {85991#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:07,540 INFO L290 TraceCheckUtils]: 6: Hoare triple {85991#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,540 INFO L290 TraceCheckUtils]: 5: Hoare triple {85991#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {85991#true} is VALID [2022-04-27 22:29:07,540 INFO L272 TraceCheckUtils]: 4: Hoare triple {85991#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,540 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85991#true} {85991#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,540 INFO L290 TraceCheckUtils]: 2: Hoare triple {85991#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {85991#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {85991#true} is VALID [2022-04-27 22:29:07,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {85991#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {85991#true} is VALID [2022-04-27 22:29:07,541 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 48 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:29:07,541 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1239508222] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:29:07,541 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:29:07,541 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [31, 30, 30] total 39 [2022-04-27 22:29:07,541 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2013307929] [2022-04-27 22:29:07,541 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:29:07,547 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:29:07,548 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:29:07,548 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:07,590 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-27 22:29:07,590 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-04-27 22:29:07,590 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:29:07,590 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-04-27 22:29:07,590 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=89, Invalid=1393, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:29:07,590 INFO L87 Difference]: Start difference. First operand 552 states and 633 transitions. Second operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:14,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:14,210 INFO L93 Difference]: Finished difference Result 558 states and 638 transitions. [2022-04-27 22:29:14,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-27 22:29:14,211 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:29:14,211 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:29:14,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:14,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 156 transitions. [2022-04-27 22:29:14,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:14,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 156 transitions. [2022-04-27 22:29:14,213 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 156 transitions. [2022-04-27 22:29:14,287 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 156 edges. 156 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:29:14,302 INFO L225 Difference]: With dead ends: 558 [2022-04-27 22:29:14,302 INFO L226 Difference]: Without dead ends: 536 [2022-04-27 22:29:14,303 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 165 GetRequests, 90 SyntacticMatches, 9 SemanticMatches, 66 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 677 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=243, Invalid=4313, Unknown=0, NotChecked=0, Total=4556 [2022-04-27 22:29:14,304 INFO L413 NwaCegarLoop]: 78 mSDtfsCounter, 151 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 3468 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 153 SdHoareTripleChecker+Valid, 225 SdHoareTripleChecker+Invalid, 3504 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 3468 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:29:14,304 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [153 Valid, 225 Invalid, 3504 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 3468 Invalid, 0 Unknown, 0 Unchecked, 1.7s Time] [2022-04-27 22:29:14,304 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 536 states. [2022-04-27 22:29:16,983 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 536 to 536. [2022-04-27 22:29:16,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:29:16,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 536 states. Second operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:29:16,984 INFO L74 IsIncluded]: Start isIncluded. First operand 536 states. Second operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:29:16,984 INFO L87 Difference]: Start difference. First operand 536 states. Second operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:29:16,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:16,995 INFO L93 Difference]: Finished difference Result 536 states and 615 transitions. [2022-04-27 22:29:16,995 INFO L276 IsEmpty]: Start isEmpty. Operand 536 states and 615 transitions. [2022-04-27 22:29:16,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:16,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:16,997 INFO L74 IsIncluded]: Start isIncluded. First operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) Second operand 536 states. [2022-04-27 22:29:17,015 INFO L87 Difference]: Start difference. First operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) Second operand 536 states. [2022-04-27 22:29:17,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:17,026 INFO L93 Difference]: Finished difference Result 536 states and 615 transitions. [2022-04-27 22:29:17,026 INFO L276 IsEmpty]: Start isEmpty. Operand 536 states and 615 transitions. [2022-04-27 22:29:17,028 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:17,028 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:17,028 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:29:17,028 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:29:17,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 536 states, 476 states have (on average 1.1638655462184875) internal successors, (554), 510 states have internal predecessors, (554), 22 states have call successors, (22), 5 states have call predecessors, (22), 37 states have return successors, (39), 20 states have call predecessors, (39), 20 states have call successors, (39) [2022-04-27 22:29:17,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 536 states to 536 states and 615 transitions. [2022-04-27 22:29:17,046 INFO L78 Accepts]: Start accepts. Automaton has 536 states and 615 transitions. Word has length 51 [2022-04-27 22:29:17,046 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:29:17,046 INFO L495 AbstractCegarLoop]: Abstraction has 536 states and 615 transitions. [2022-04-27 22:29:17,046 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:17,047 INFO L276 IsEmpty]: Start isEmpty. Operand 536 states and 615 transitions. [2022-04-27 22:29:17,049 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 22:29:17,049 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:29:17,049 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 3, 3, 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] [2022-04-27 22:29:17,065 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (53)] Forceful destruction successful, exit code 0 [2022-04-27 22:29:17,259 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 53 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable61 [2022-04-27 22:29:17,259 INFO L420 AbstractCegarLoop]: === Iteration 63 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:29:17,259 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:29:17,259 INFO L85 PathProgramCache]: Analyzing trace with hash 1775857708, now seen corresponding path program 53 times [2022-04-27 22:29:17,260 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:29:17,260 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1676047588] [2022-04-27 22:29:17,260 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:29:17,260 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:29:17,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:17,348 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:29:17,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:17,351 INFO L290 TraceCheckUtils]: 0: Hoare triple {89177#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {89130#true} is VALID [2022-04-27 22:29:17,351 INFO L290 TraceCheckUtils]: 1: Hoare triple {89130#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:17,351 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89130#true} {89130#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:17,351 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:29:17,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:17,454 INFO L290 TraceCheckUtils]: 0: Hoare triple {89130#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,455 INFO L290 TraceCheckUtils]: 3: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,455 INFO L290 TraceCheckUtils]: 4: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,455 INFO L290 TraceCheckUtils]: 5: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:17,456 INFO L290 TraceCheckUtils]: 6: Hoare triple {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:17,456 INFO L290 TraceCheckUtils]: 7: Hoare triple {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:17,456 INFO L290 TraceCheckUtils]: 8: Hoare triple {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:17,457 INFO L290 TraceCheckUtils]: 9: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:17,457 INFO L290 TraceCheckUtils]: 10: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89183#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} is VALID [2022-04-27 22:29:17,457 INFO L290 TraceCheckUtils]: 11: Hoare triple {89183#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89184#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:29:17,458 INFO L290 TraceCheckUtils]: 12: Hoare triple {89184#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89185#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:29:17,458 INFO L290 TraceCheckUtils]: 13: Hoare triple {89185#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:17,459 INFO L290 TraceCheckUtils]: 14: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:17,459 INFO L290 TraceCheckUtils]: 15: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:17,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:17,460 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {89130#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {89153#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:17,460 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:29:17,464 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:17,692 INFO L290 TraceCheckUtils]: 0: Hoare triple {89130#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,693 INFO L290 TraceCheckUtils]: 1: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,693 INFO L290 TraceCheckUtils]: 2: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,693 INFO L290 TraceCheckUtils]: 3: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,694 INFO L290 TraceCheckUtils]: 4: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,694 INFO L290 TraceCheckUtils]: 5: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:17,694 INFO L290 TraceCheckUtils]: 6: Hoare triple {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:17,695 INFO L290 TraceCheckUtils]: 7: Hoare triple {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:17,695 INFO L290 TraceCheckUtils]: 8: Hoare triple {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:17,696 INFO L290 TraceCheckUtils]: 9: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:17,696 INFO L290 TraceCheckUtils]: 10: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89193#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} is VALID [2022-04-27 22:29:17,697 INFO L290 TraceCheckUtils]: 11: Hoare triple {89193#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89194#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:29:17,697 INFO L290 TraceCheckUtils]: 12: Hoare triple {89194#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89195#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:17,698 INFO L290 TraceCheckUtils]: 13: Hoare triple {89195#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:17,698 INFO L290 TraceCheckUtils]: 14: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:17,698 INFO L290 TraceCheckUtils]: 15: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:17,698 INFO L290 TraceCheckUtils]: 16: Hoare triple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:17,699 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {89173#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:17,700 INFO L272 TraceCheckUtils]: 0: Hoare triple {89130#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89177#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:29:17,700 INFO L290 TraceCheckUtils]: 1: Hoare triple {89177#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {89130#true} is VALID [2022-04-27 22:29:17,700 INFO L290 TraceCheckUtils]: 2: Hoare triple {89130#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:17,700 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89130#true} {89130#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:17,700 INFO L272 TraceCheckUtils]: 4: Hoare triple {89130#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:17,700 INFO L290 TraceCheckUtils]: 5: Hoare triple {89130#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:17,700 INFO L290 TraceCheckUtils]: 6: Hoare triple {89130#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:17,700 INFO L272 TraceCheckUtils]: 7: Hoare triple {89130#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:17,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {89130#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,701 INFO L290 TraceCheckUtils]: 9: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,702 INFO L290 TraceCheckUtils]: 10: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,702 INFO L290 TraceCheckUtils]: 11: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,702 INFO L290 TraceCheckUtils]: 12: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:17,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:17,703 INFO L290 TraceCheckUtils]: 14: Hoare triple {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:17,704 INFO L290 TraceCheckUtils]: 15: Hoare triple {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:17,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:17,704 INFO L290 TraceCheckUtils]: 17: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:17,705 INFO L290 TraceCheckUtils]: 18: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89183#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} is VALID [2022-04-27 22:29:17,705 INFO L290 TraceCheckUtils]: 19: Hoare triple {89183#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89184#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:29:17,706 INFO L290 TraceCheckUtils]: 20: Hoare triple {89184#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89185#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:29:17,706 INFO L290 TraceCheckUtils]: 21: Hoare triple {89185#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:17,706 INFO L290 TraceCheckUtils]: 22: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:17,707 INFO L290 TraceCheckUtils]: 23: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:17,707 INFO L290 TraceCheckUtils]: 24: Hoare triple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:17,708 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {89130#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {89153#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:17,708 INFO L290 TraceCheckUtils]: 26: Hoare triple {89153#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:17,708 INFO L272 TraceCheckUtils]: 27: Hoare triple {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:17,709 INFO L290 TraceCheckUtils]: 28: Hoare triple {89130#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,709 INFO L290 TraceCheckUtils]: 29: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,709 INFO L290 TraceCheckUtils]: 30: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,710 INFO L290 TraceCheckUtils]: 31: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,710 INFO L290 TraceCheckUtils]: 32: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:17,710 INFO L290 TraceCheckUtils]: 33: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:17,711 INFO L290 TraceCheckUtils]: 34: Hoare triple {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:17,711 INFO L290 TraceCheckUtils]: 35: Hoare triple {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:17,712 INFO L290 TraceCheckUtils]: 36: Hoare triple {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:17,712 INFO L290 TraceCheckUtils]: 37: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:17,712 INFO L290 TraceCheckUtils]: 38: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89193#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} is VALID [2022-04-27 22:29:17,713 INFO L290 TraceCheckUtils]: 39: Hoare triple {89193#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89194#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:29:17,713 INFO L290 TraceCheckUtils]: 40: Hoare triple {89194#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89195#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:17,714 INFO L290 TraceCheckUtils]: 41: Hoare triple {89195#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:17,714 INFO L290 TraceCheckUtils]: 42: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:17,714 INFO L290 TraceCheckUtils]: 43: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:17,715 INFO L290 TraceCheckUtils]: 44: Hoare triple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:17,715 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {89173#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:17,716 INFO L290 TraceCheckUtils]: 46: Hoare triple {89173#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {89174#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:29:17,716 INFO L272 TraceCheckUtils]: 47: Hoare triple {89174#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {89175#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:29:17,716 INFO L290 TraceCheckUtils]: 48: Hoare triple {89175#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {89176#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:29:17,716 INFO L290 TraceCheckUtils]: 49: Hoare triple {89176#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {89131#false} is VALID [2022-04-27 22:29:17,716 INFO L290 TraceCheckUtils]: 50: Hoare triple {89131#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89131#false} is VALID [2022-04-27 22:29:17,717 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:29:17,717 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:29:17,717 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1676047588] [2022-04-27 22:29:17,717 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1676047588] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:29:17,717 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1706062188] [2022-04-27 22:29:17,717 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:29:17,717 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:17,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:29:17,718 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:29:17,719 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (54)] Waiting until timeout for monitored process [2022-04-27 22:29:17,812 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 3 check-sat command(s) [2022-04-27 22:29:17,813 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:29:17,814 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 51 conjunts are in the unsatisfiable core [2022-04-27 22:29:17,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:17,824 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:29:18,511 INFO L272 TraceCheckUtils]: 0: Hoare triple {89130#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:18,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {89130#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {89130#true} is VALID [2022-04-27 22:29:18,511 INFO L290 TraceCheckUtils]: 2: Hoare triple {89130#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:18,511 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89130#true} {89130#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:18,511 INFO L272 TraceCheckUtils]: 4: Hoare triple {89130#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:18,511 INFO L290 TraceCheckUtils]: 5: Hoare triple {89130#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:18,511 INFO L290 TraceCheckUtils]: 6: Hoare triple {89130#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:18,511 INFO L272 TraceCheckUtils]: 7: Hoare triple {89130#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:18,512 INFO L290 TraceCheckUtils]: 8: Hoare triple {89130#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:18,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:18,513 INFO L290 TraceCheckUtils]: 10: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:18,513 INFO L290 TraceCheckUtils]: 11: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:18,513 INFO L290 TraceCheckUtils]: 12: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:18,514 INFO L290 TraceCheckUtils]: 13: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:18,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:18,515 INFO L290 TraceCheckUtils]: 15: Hoare triple {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:18,515 INFO L290 TraceCheckUtils]: 16: Hoare triple {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:18,516 INFO L290 TraceCheckUtils]: 17: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:18,516 INFO L290 TraceCheckUtils]: 18: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89255#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:18,516 INFO L290 TraceCheckUtils]: 19: Hoare triple {89255#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89259#(and (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:18,517 INFO L290 TraceCheckUtils]: 20: Hoare triple {89259#(and (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89263#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:18,517 INFO L290 TraceCheckUtils]: 21: Hoare triple {89263#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:18,518 INFO L290 TraceCheckUtils]: 22: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:18,518 INFO L290 TraceCheckUtils]: 23: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:18,518 INFO L290 TraceCheckUtils]: 24: Hoare triple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:18,519 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {89130#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {89153#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:18,519 INFO L290 TraceCheckUtils]: 26: Hoare triple {89153#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:18,520 INFO L272 TraceCheckUtils]: 27: Hoare triple {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:18,520 INFO L290 TraceCheckUtils]: 28: Hoare triple {89130#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:18,520 INFO L290 TraceCheckUtils]: 29: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:18,521 INFO L290 TraceCheckUtils]: 30: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:18,521 INFO L290 TraceCheckUtils]: 31: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:18,521 INFO L290 TraceCheckUtils]: 32: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:18,522 INFO L290 TraceCheckUtils]: 33: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:18,522 INFO L290 TraceCheckUtils]: 34: Hoare triple {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:18,523 INFO L290 TraceCheckUtils]: 35: Hoare triple {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:18,523 INFO L290 TraceCheckUtils]: 36: Hoare triple {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:18,524 INFO L290 TraceCheckUtils]: 37: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:18,524 INFO L290 TraceCheckUtils]: 38: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89318#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:18,524 INFO L290 TraceCheckUtils]: 39: Hoare triple {89318#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89322#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:29:18,525 INFO L290 TraceCheckUtils]: 40: Hoare triple {89322#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89326#(and (= (* 2 student_version_~j~1) student_version_~y~1) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:18,525 INFO L290 TraceCheckUtils]: 41: Hoare triple {89326#(and (= (* 2 student_version_~j~1) student_version_~y~1) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:18,526 INFO L290 TraceCheckUtils]: 42: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:18,526 INFO L290 TraceCheckUtils]: 43: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:18,526 INFO L290 TraceCheckUtils]: 44: Hoare triple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:18,527 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {89342#(and (<= main_~n_stones1~0 12) (<= 12 |main_#t~ret9|) (<= |main_#t~ret9| 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:18,528 INFO L290 TraceCheckUtils]: 46: Hoare triple {89342#(and (<= main_~n_stones1~0 12) (<= 12 |main_#t~ret9|) (<= |main_#t~ret9| 12) (<= 12 main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {89346#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones2~0) (<= main_~n_stones2~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:18,528 INFO L272 TraceCheckUtils]: 47: Hoare triple {89346#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones2~0) (<= main_~n_stones2~0 12) (<= 12 main_~n_stones1~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {89350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:29:18,528 INFO L290 TraceCheckUtils]: 48: Hoare triple {89350#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {89354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:29:18,529 INFO L290 TraceCheckUtils]: 49: Hoare triple {89354#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {89131#false} is VALID [2022-04-27 22:29:18,529 INFO L290 TraceCheckUtils]: 50: Hoare triple {89131#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89131#false} is VALID [2022-04-27 22:29:18,529 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:29:18,529 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:29:19,029 INFO L290 TraceCheckUtils]: 50: Hoare triple {89131#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89131#false} is VALID [2022-04-27 22:29:19,029 INFO L290 TraceCheckUtils]: 49: Hoare triple {89354#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {89131#false} is VALID [2022-04-27 22:29:19,030 INFO L290 TraceCheckUtils]: 48: Hoare triple {89350#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {89354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:29:19,030 INFO L272 TraceCheckUtils]: 47: Hoare triple {89174#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {89350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:29:19,031 INFO L290 TraceCheckUtils]: 46: Hoare triple {89173#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {89174#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:29:19,032 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {89173#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:19,032 INFO L290 TraceCheckUtils]: 44: Hoare triple {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:19,032 INFO L290 TraceCheckUtils]: 43: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {89197#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:29:19,033 INFO L290 TraceCheckUtils]: 42: Hoare triple {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:19,033 INFO L290 TraceCheckUtils]: 41: Hoare triple {89195#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89196#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:29:19,034 INFO L290 TraceCheckUtils]: 40: Hoare triple {89194#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89195#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:19,034 INFO L290 TraceCheckUtils]: 39: Hoare triple {89193#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89194#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:29:19,035 INFO L290 TraceCheckUtils]: 38: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {89193#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} is VALID [2022-04-27 22:29:19,035 INFO L290 TraceCheckUtils]: 37: Hoare triple {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:19,036 INFO L290 TraceCheckUtils]: 36: Hoare triple {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89192#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:29:19,036 INFO L290 TraceCheckUtils]: 35: Hoare triple {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89191#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:29:19,037 INFO L290 TraceCheckUtils]: 34: Hoare triple {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89190#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:19,037 INFO L290 TraceCheckUtils]: 33: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {89189#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:19,037 INFO L290 TraceCheckUtils]: 32: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:19,038 INFO L290 TraceCheckUtils]: 31: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:19,038 INFO L290 TraceCheckUtils]: 30: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:19,039 INFO L290 TraceCheckUtils]: 29: Hoare triple {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:19,039 INFO L290 TraceCheckUtils]: 28: Hoare triple {89130#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {89188#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:19,039 INFO L272 TraceCheckUtils]: 27: Hoare triple {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:19,039 INFO L290 TraceCheckUtils]: 26: Hoare triple {89153#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {89154#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:29:19,040 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {89130#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {89153#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:29:19,040 INFO L290 TraceCheckUtils]: 24: Hoare triple {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:19,041 INFO L290 TraceCheckUtils]: 23: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {89187#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:29:19,041 INFO L290 TraceCheckUtils]: 22: Hoare triple {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:19,042 INFO L290 TraceCheckUtils]: 21: Hoare triple {89185#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89186#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:29:19,042 INFO L290 TraceCheckUtils]: 20: Hoare triple {89184#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89185#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:29:19,043 INFO L290 TraceCheckUtils]: 19: Hoare triple {89183#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89184#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:29:19,043 INFO L290 TraceCheckUtils]: 18: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {89183#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} is VALID [2022-04-27 22:29:19,043 INFO L290 TraceCheckUtils]: 17: Hoare triple {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:19,044 INFO L290 TraceCheckUtils]: 16: Hoare triple {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89182#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:29:19,044 INFO L290 TraceCheckUtils]: 15: Hoare triple {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89181#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:29:19,045 INFO L290 TraceCheckUtils]: 14: Hoare triple {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89180#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:19,045 INFO L290 TraceCheckUtils]: 13: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {89179#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:19,045 INFO L290 TraceCheckUtils]: 12: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:19,046 INFO L290 TraceCheckUtils]: 11: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:19,046 INFO L290 TraceCheckUtils]: 10: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:19,047 INFO L290 TraceCheckUtils]: 9: Hoare triple {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:19,047 INFO L290 TraceCheckUtils]: 8: Hoare triple {89130#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {89178#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:19,047 INFO L272 TraceCheckUtils]: 7: Hoare triple {89130#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:19,047 INFO L290 TraceCheckUtils]: 6: Hoare triple {89130#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:19,047 INFO L290 TraceCheckUtils]: 5: Hoare triple {89130#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {89130#true} is VALID [2022-04-27 22:29:19,047 INFO L272 TraceCheckUtils]: 4: Hoare triple {89130#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:19,047 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89130#true} {89130#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:19,047 INFO L290 TraceCheckUtils]: 2: Hoare triple {89130#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:19,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {89130#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {89130#true} is VALID [2022-04-27 22:29:19,048 INFO L272 TraceCheckUtils]: 0: Hoare triple {89130#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89130#true} is VALID [2022-04-27 22:29:19,048 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:29:19,048 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1706062188] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:29:19,048 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:29:19,048 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 28, 28] total 39 [2022-04-27 22:29:19,048 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [314382330] [2022-04-27 22:29:19,048 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:29:19,049 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:29:19,049 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:29:19,049 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:19,088 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-27 22:29:19,089 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-04-27 22:29:19,089 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:29:19,089 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-04-27 22:29:19,089 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=1389, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:29:19,089 INFO L87 Difference]: Start difference. First operand 536 states and 615 transitions. Second operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:25,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:25,541 INFO L93 Difference]: Finished difference Result 542 states and 620 transitions. [2022-04-27 22:29:25,541 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-27 22:29:25,541 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:29:25,541 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:29:25,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:25,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 126 transitions. [2022-04-27 22:29:25,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:25,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 126 transitions. [2022-04-27 22:29:25,543 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 126 transitions. [2022-04-27 22:29:25,631 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-27 22:29:25,644 INFO L225 Difference]: With dead ends: 542 [2022-04-27 22:29:25,644 INFO L226 Difference]: Without dead ends: 518 [2022-04-27 22:29:25,646 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 88 SyntacticMatches, 9 SemanticMatches, 64 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 682 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=245, Invalid=4045, Unknown=0, NotChecked=0, Total=4290 [2022-04-27 22:29:25,646 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 115 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 2719 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 210 SdHoareTripleChecker+Invalid, 2755 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 2719 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-27 22:29:25,646 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [116 Valid, 210 Invalid, 2755 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 2719 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-27 22:29:25,646 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 518 states. [2022-04-27 22:29:29,804 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 518 to 518. [2022-04-27 22:29:29,804 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:29:29,804 INFO L82 GeneralOperation]: Start isEquivalent. First operand 518 states. Second operand has 518 states, 461 states have (on average 1.1648590021691974) internal successors, (537), 493 states have internal predecessors, (537), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (37), 19 states have call predecessors, (37), 19 states have call successors, (37) [2022-04-27 22:29:29,805 INFO L74 IsIncluded]: Start isIncluded. First operand 518 states. Second operand has 518 states, 461 states have (on average 1.1648590021691974) internal successors, (537), 493 states have internal predecessors, (537), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (37), 19 states have call predecessors, (37), 19 states have call successors, (37) [2022-04-27 22:29:29,805 INFO L87 Difference]: Start difference. First operand 518 states. Second operand has 518 states, 461 states have (on average 1.1648590021691974) internal successors, (537), 493 states have internal predecessors, (537), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (37), 19 states have call predecessors, (37), 19 states have call successors, (37) [2022-04-27 22:29:29,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:29,815 INFO L93 Difference]: Finished difference Result 518 states and 595 transitions. [2022-04-27 22:29:29,815 INFO L276 IsEmpty]: Start isEmpty. Operand 518 states and 595 transitions. [2022-04-27 22:29:29,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:29,817 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:29,817 INFO L74 IsIncluded]: Start isIncluded. First operand has 518 states, 461 states have (on average 1.1648590021691974) internal successors, (537), 493 states have internal predecessors, (537), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (37), 19 states have call predecessors, (37), 19 states have call successors, (37) Second operand 518 states. [2022-04-27 22:29:29,817 INFO L87 Difference]: Start difference. First operand has 518 states, 461 states have (on average 1.1648590021691974) internal successors, (537), 493 states have internal predecessors, (537), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (37), 19 states have call predecessors, (37), 19 states have call successors, (37) Second operand 518 states. [2022-04-27 22:29:29,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:29,827 INFO L93 Difference]: Finished difference Result 518 states and 595 transitions. [2022-04-27 22:29:29,827 INFO L276 IsEmpty]: Start isEmpty. Operand 518 states and 595 transitions. [2022-04-27 22:29:29,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:29,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:29,829 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:29:29,829 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:29:29,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 518 states, 461 states have (on average 1.1648590021691974) internal successors, (537), 493 states have internal predecessors, (537), 21 states have call successors, (21), 5 states have call predecessors, (21), 35 states have return successors, (37), 19 states have call predecessors, (37), 19 states have call successors, (37) [2022-04-27 22:29:29,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 518 states to 518 states and 595 transitions. [2022-04-27 22:29:29,842 INFO L78 Accepts]: Start accepts. Automaton has 518 states and 595 transitions. Word has length 51 [2022-04-27 22:29:29,842 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:29:29,842 INFO L495 AbstractCegarLoop]: Abstraction has 518 states and 595 transitions. [2022-04-27 22:29:29,842 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:29,842 INFO L276 IsEmpty]: Start isEmpty. Operand 518 states and 595 transitions. [2022-04-27 22:29:29,844 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 22:29:29,844 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:29:29,844 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:29:29,860 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (54)] Forceful destruction successful, exit code 0 [2022-04-27 22:29:30,058 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable62,54 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:30,059 INFO L420 AbstractCegarLoop]: === Iteration 64 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:29:30,059 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:29:30,059 INFO L85 PathProgramCache]: Analyzing trace with hash 1844811183, now seen corresponding path program 54 times [2022-04-27 22:29:30,059 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:29:30,059 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240933586] [2022-04-27 22:29:30,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:29:30,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:29:30,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:30,090 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:29:30,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:30,092 INFO L290 TraceCheckUtils]: 0: Hoare triple {92221#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {92179#true} is VALID [2022-04-27 22:29:30,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {92179#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:30,092 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {92179#true} {92179#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:30,092 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:29:30,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:30,183 INFO L290 TraceCheckUtils]: 0: Hoare triple {92179#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {92222#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:30,184 INFO L290 TraceCheckUtils]: 1: Hoare triple {92222#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92223#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:30,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {92223#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92224#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:29:30,185 INFO L290 TraceCheckUtils]: 3: Hoare triple {92224#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92225#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:29:30,186 INFO L290 TraceCheckUtils]: 4: Hoare triple {92225#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92226#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:29:30,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {92226#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {92227#(and (<= |correct_version_#in~n| (* 4 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:30,187 INFO L290 TraceCheckUtils]: 6: Hoare triple {92227#(and (<= |correct_version_#in~n| (* 4 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,187 INFO L290 TraceCheckUtils]: 7: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,187 INFO L290 TraceCheckUtils]: 8: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,188 INFO L290 TraceCheckUtils]: 9: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,188 INFO L290 TraceCheckUtils]: 10: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,188 INFO L290 TraceCheckUtils]: 11: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,188 INFO L290 TraceCheckUtils]: 12: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,189 INFO L290 TraceCheckUtils]: 13: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,189 INFO L290 TraceCheckUtils]: 14: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,189 INFO L290 TraceCheckUtils]: 15: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,190 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} {92179#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {92201#(<= main_~n~0 (* main_~a~0 4))} is VALID [2022-04-27 22:29:30,190 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-04-27 22:29:30,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:30,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {92179#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {92229#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {92229#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92230#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {92230#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92231#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,335 INFO L290 TraceCheckUtils]: 3: Hoare triple {92231#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92232#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,336 INFO L290 TraceCheckUtils]: 4: Hoare triple {92232#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92233#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {92233#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92234#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,337 INFO L290 TraceCheckUtils]: 6: Hoare triple {92234#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {92235#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:29:30,337 INFO L290 TraceCheckUtils]: 7: Hoare triple {92235#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,337 INFO L290 TraceCheckUtils]: 8: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,337 INFO L290 TraceCheckUtils]: 9: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,338 INFO L290 TraceCheckUtils]: 10: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,338 INFO L290 TraceCheckUtils]: 11: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,338 INFO L290 TraceCheckUtils]: 12: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,339 INFO L290 TraceCheckUtils]: 13: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,339 INFO L290 TraceCheckUtils]: 14: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,339 INFO L290 TraceCheckUtils]: 15: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,339 INFO L290 TraceCheckUtils]: 16: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,340 INFO L290 TraceCheckUtils]: 17: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,340 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} {92201#(<= main_~n~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {92180#false} is VALID [2022-04-27 22:29:30,341 INFO L272 TraceCheckUtils]: 0: Hoare triple {92179#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92221#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:29:30,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {92221#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {92179#true} is VALID [2022-04-27 22:29:30,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {92179#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:30,341 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92179#true} {92179#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:30,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {92179#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:30,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {92179#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:30,341 INFO L290 TraceCheckUtils]: 6: Hoare triple {92179#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:30,341 INFO L272 TraceCheckUtils]: 7: Hoare triple {92179#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:30,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {92179#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {92222#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:30,342 INFO L290 TraceCheckUtils]: 9: Hoare triple {92222#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92223#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:30,343 INFO L290 TraceCheckUtils]: 10: Hoare triple {92223#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92224#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:29:30,343 INFO L290 TraceCheckUtils]: 11: Hoare triple {92224#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92225#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:29:30,344 INFO L290 TraceCheckUtils]: 12: Hoare triple {92225#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92226#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:29:30,344 INFO L290 TraceCheckUtils]: 13: Hoare triple {92226#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {92227#(and (<= |correct_version_#in~n| (* 4 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:30,345 INFO L290 TraceCheckUtils]: 14: Hoare triple {92227#(and (<= |correct_version_#in~n| (* 4 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,345 INFO L290 TraceCheckUtils]: 15: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,345 INFO L290 TraceCheckUtils]: 16: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,345 INFO L290 TraceCheckUtils]: 17: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,346 INFO L290 TraceCheckUtils]: 18: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,346 INFO L290 TraceCheckUtils]: 19: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,347 INFO L290 TraceCheckUtils]: 21: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,347 INFO L290 TraceCheckUtils]: 22: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,347 INFO L290 TraceCheckUtils]: 23: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:30,348 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} {92179#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {92201#(<= main_~n~0 (* main_~a~0 4))} is VALID [2022-04-27 22:29:30,348 INFO L290 TraceCheckUtils]: 25: Hoare triple {92201#(<= main_~n~0 (* main_~a~0 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {92201#(<= main_~n~0 (* main_~a~0 4))} is VALID [2022-04-27 22:29:30,348 INFO L272 TraceCheckUtils]: 26: Hoare triple {92201#(<= main_~n~0 (* main_~a~0 4))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:30,349 INFO L290 TraceCheckUtils]: 27: Hoare triple {92179#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {92229#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,349 INFO L290 TraceCheckUtils]: 28: Hoare triple {92229#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92230#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,350 INFO L290 TraceCheckUtils]: 29: Hoare triple {92230#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92231#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,350 INFO L290 TraceCheckUtils]: 30: Hoare triple {92231#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92232#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,351 INFO L290 TraceCheckUtils]: 31: Hoare triple {92232#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92233#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,351 INFO L290 TraceCheckUtils]: 32: Hoare triple {92233#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92234#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:30,352 INFO L290 TraceCheckUtils]: 33: Hoare triple {92234#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {92235#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:29:30,352 INFO L290 TraceCheckUtils]: 34: Hoare triple {92235#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* student_version_~a 4) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,352 INFO L290 TraceCheckUtils]: 35: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,352 INFO L290 TraceCheckUtils]: 36: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,353 INFO L290 TraceCheckUtils]: 37: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,353 INFO L290 TraceCheckUtils]: 38: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,353 INFO L290 TraceCheckUtils]: 39: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,353 INFO L290 TraceCheckUtils]: 40: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,354 INFO L290 TraceCheckUtils]: 41: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,354 INFO L290 TraceCheckUtils]: 42: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,354 INFO L290 TraceCheckUtils]: 43: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,355 INFO L290 TraceCheckUtils]: 44: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:30,355 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} {92201#(<= main_~n~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {92180#false} is VALID [2022-04-27 22:29:30,355 INFO L290 TraceCheckUtils]: 46: Hoare triple {92180#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {92180#false} is VALID [2022-04-27 22:29:30,355 INFO L272 TraceCheckUtils]: 47: Hoare triple {92180#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {92180#false} is VALID [2022-04-27 22:29:30,356 INFO L290 TraceCheckUtils]: 48: Hoare triple {92180#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {92180#false} is VALID [2022-04-27 22:29:30,356 INFO L290 TraceCheckUtils]: 49: Hoare triple {92180#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {92180#false} is VALID [2022-04-27 22:29:30,356 INFO L290 TraceCheckUtils]: 50: Hoare triple {92180#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92180#false} is VALID [2022-04-27 22:29:30,356 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 27 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-27 22:29:30,356 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:29:30,356 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1240933586] [2022-04-27 22:29:30,356 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1240933586] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:29:30,356 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1537537762] [2022-04-27 22:29:30,356 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:29:30,356 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:30,356 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:29:30,357 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:29:30,358 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (55)] Waiting until timeout for monitored process [2022-04-27 22:29:30,435 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-27 22:29:30,436 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:29:30,437 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 22:29:30,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:30,449 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:29:31,302 INFO L272 TraceCheckUtils]: 0: Hoare triple {92179#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:31,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {92179#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {92179#true} is VALID [2022-04-27 22:29:31,302 INFO L290 TraceCheckUtils]: 2: Hoare triple {92179#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:31,302 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92179#true} {92179#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:31,302 INFO L272 TraceCheckUtils]: 4: Hoare triple {92179#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:31,302 INFO L290 TraceCheckUtils]: 5: Hoare triple {92179#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:31,302 INFO L290 TraceCheckUtils]: 6: Hoare triple {92179#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:31,302 INFO L272 TraceCheckUtils]: 7: Hoare triple {92179#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:31,303 INFO L290 TraceCheckUtils]: 8: Hoare triple {92179#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {92264#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:29:31,303 INFO L290 TraceCheckUtils]: 9: Hoare triple {92264#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92268#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:29:31,304 INFO L290 TraceCheckUtils]: 10: Hoare triple {92268#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92272#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:29:31,304 INFO L290 TraceCheckUtils]: 11: Hoare triple {92272#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92276#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:29:31,305 INFO L290 TraceCheckUtils]: 12: Hoare triple {92276#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92280#(and (<= (div (- correct_version_~b~0) (- 4)) |correct_version_#in~a|) (<= |correct_version_#in~n| correct_version_~n))} is VALID [2022-04-27 22:29:31,305 INFO L290 TraceCheckUtils]: 13: Hoare triple {92280#(and (<= (div (- correct_version_~b~0) (- 4)) |correct_version_#in~a|) (<= |correct_version_#in~n| correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,306 INFO L290 TraceCheckUtils]: 14: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,306 INFO L290 TraceCheckUtils]: 15: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,306 INFO L290 TraceCheckUtils]: 16: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,306 INFO L290 TraceCheckUtils]: 17: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,307 INFO L290 TraceCheckUtils]: 18: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,307 INFO L290 TraceCheckUtils]: 19: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,307 INFO L290 TraceCheckUtils]: 20: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,308 INFO L290 TraceCheckUtils]: 21: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,308 INFO L290 TraceCheckUtils]: 22: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,308 INFO L290 TraceCheckUtils]: 23: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:31,309 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} {92179#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {92201#(<= main_~n~0 (* main_~a~0 4))} is VALID [2022-04-27 22:29:31,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {92201#(<= main_~n~0 (* main_~a~0 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {92201#(<= main_~n~0 (* main_~a~0 4))} is VALID [2022-04-27 22:29:31,309 INFO L272 TraceCheckUtils]: 26: Hoare triple {92201#(<= main_~n~0 (* main_~a~0 4))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:31,310 INFO L290 TraceCheckUtils]: 27: Hoare triple {92179#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {92326#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:29:31,310 INFO L290 TraceCheckUtils]: 28: Hoare triple {92326#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92330#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:29:31,311 INFO L290 TraceCheckUtils]: 29: Hoare triple {92330#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92334#(and (<= (* 2 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:29:31,311 INFO L290 TraceCheckUtils]: 30: Hoare triple {92334#(and (<= (* 2 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92338#(and (<= (* 3 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:29:31,312 INFO L290 TraceCheckUtils]: 31: Hoare triple {92338#(and (<= (* 3 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92342#(and (<= |student_version_#in~a| (div student_version_~b~1 4)) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:29:31,312 INFO L290 TraceCheckUtils]: 32: Hoare triple {92342#(and (<= |student_version_#in~a| (div student_version_~b~1 4)) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,313 INFO L290 TraceCheckUtils]: 33: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,313 INFO L290 TraceCheckUtils]: 34: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,313 INFO L290 TraceCheckUtils]: 35: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,313 INFO L290 TraceCheckUtils]: 36: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,314 INFO L290 TraceCheckUtils]: 37: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,314 INFO L290 TraceCheckUtils]: 38: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,314 INFO L290 TraceCheckUtils]: 39: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,314 INFO L290 TraceCheckUtils]: 40: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,315 INFO L290 TraceCheckUtils]: 41: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,315 INFO L290 TraceCheckUtils]: 42: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,315 INFO L290 TraceCheckUtils]: 43: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:31,316 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} {92201#(<= main_~n~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {92180#false} is VALID [2022-04-27 22:29:31,316 INFO L290 TraceCheckUtils]: 46: Hoare triple {92180#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {92180#false} is VALID [2022-04-27 22:29:31,316 INFO L272 TraceCheckUtils]: 47: Hoare triple {92180#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {92180#false} is VALID [2022-04-27 22:29:31,316 INFO L290 TraceCheckUtils]: 48: Hoare triple {92180#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {92180#false} is VALID [2022-04-27 22:29:31,316 INFO L290 TraceCheckUtils]: 49: Hoare triple {92180#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {92180#false} is VALID [2022-04-27 22:29:31,317 INFO L290 TraceCheckUtils]: 50: Hoare triple {92180#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92180#false} is VALID [2022-04-27 22:29:31,317 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-27 22:29:31,317 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:29:32,416 INFO L290 TraceCheckUtils]: 50: Hoare triple {92180#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92180#false} is VALID [2022-04-27 22:29:32,416 INFO L290 TraceCheckUtils]: 49: Hoare triple {92180#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {92180#false} is VALID [2022-04-27 22:29:32,416 INFO L290 TraceCheckUtils]: 48: Hoare triple {92180#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {92180#false} is VALID [2022-04-27 22:29:32,416 INFO L272 TraceCheckUtils]: 47: Hoare triple {92180#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {92180#false} is VALID [2022-04-27 22:29:32,416 INFO L290 TraceCheckUtils]: 46: Hoare triple {92180#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {92180#false} is VALID [2022-04-27 22:29:32,417 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} {92201#(<= main_~n~0 (* main_~a~0 4))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {92180#false} is VALID [2022-04-27 22:29:32,417 INFO L290 TraceCheckUtils]: 44: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,417 INFO L290 TraceCheckUtils]: 43: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,417 INFO L290 TraceCheckUtils]: 42: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,418 INFO L290 TraceCheckUtils]: 41: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,418 INFO L290 TraceCheckUtils]: 40: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,418 INFO L290 TraceCheckUtils]: 39: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,418 INFO L290 TraceCheckUtils]: 38: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,418 INFO L290 TraceCheckUtils]: 37: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,418 INFO L290 TraceCheckUtils]: 36: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,419 INFO L290 TraceCheckUtils]: 35: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,419 INFO L290 TraceCheckUtils]: 34: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,419 INFO L290 TraceCheckUtils]: 33: Hoare triple {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,419 INFO L290 TraceCheckUtils]: 32: Hoare triple {92457#(or (not (< student_version_~b~1 student_version_~n)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92236#(<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:29:32,420 INFO L290 TraceCheckUtils]: 31: Hoare triple {92461#(or (<= student_version_~n (+ student_version_~b~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92457#(or (not (< student_version_~b~1 student_version_~n)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:29:32,420 INFO L290 TraceCheckUtils]: 30: Hoare triple {92465#(or (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92461#(or (<= student_version_~n (+ student_version_~b~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:29:32,421 INFO L290 TraceCheckUtils]: 29: Hoare triple {92469#(or (<= student_version_~n (+ (* 3 student_version_~a) student_version_~b~1)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92465#(or (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:29:32,421 INFO L290 TraceCheckUtils]: 28: Hoare triple {92473#(or (<= student_version_~n (+ student_version_~b~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {92469#(or (<= student_version_~n (+ (* 3 student_version_~a) student_version_~b~1)) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:29:32,421 INFO L290 TraceCheckUtils]: 27: Hoare triple {92179#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {92473#(or (<= student_version_~n (+ student_version_~b~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 4) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:29:32,421 INFO L272 TraceCheckUtils]: 26: Hoare triple {92201#(<= main_~n~0 (* main_~a~0 4))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:32,422 INFO L290 TraceCheckUtils]: 25: Hoare triple {92201#(<= main_~n~0 (* main_~a~0 4))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {92201#(<= main_~n~0 (* main_~a~0 4))} is VALID [2022-04-27 22:29:32,422 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} {92179#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {92201#(<= main_~n~0 (* main_~a~0 4))} is VALID [2022-04-27 22:29:32,422 INFO L290 TraceCheckUtils]: 23: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,423 INFO L290 TraceCheckUtils]: 22: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,423 INFO L290 TraceCheckUtils]: 21: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,423 INFO L290 TraceCheckUtils]: 20: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,423 INFO L290 TraceCheckUtils]: 19: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,423 INFO L290 TraceCheckUtils]: 18: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,423 INFO L290 TraceCheckUtils]: 17: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,424 INFO L290 TraceCheckUtils]: 16: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,424 INFO L290 TraceCheckUtils]: 15: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,424 INFO L290 TraceCheckUtils]: 14: Hoare triple {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,424 INFO L290 TraceCheckUtils]: 13: Hoare triple {92519#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< correct_version_~b~0 correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {92228#(<= |correct_version_#in~n| (* |correct_version_#in~a| 4))} is VALID [2022-04-27 22:29:32,425 INFO L290 TraceCheckUtils]: 12: Hoare triple {92523#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92519#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< correct_version_~b~0 correct_version_~n))} is VALID [2022-04-27 22:29:32,425 INFO L290 TraceCheckUtils]: 11: Hoare triple {92527#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92523#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} is VALID [2022-04-27 22:29:32,425 INFO L290 TraceCheckUtils]: 10: Hoare triple {92531#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ correct_version_~b~0 (* 3 correct_version_~a)) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92527#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n))} is VALID [2022-04-27 22:29:32,426 INFO L290 TraceCheckUtils]: 9: Hoare triple {92535#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ correct_version_~b~0 (* 4 correct_version_~a)) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {92531#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ correct_version_~b~0 (* 3 correct_version_~a)) correct_version_~n))} is VALID [2022-04-27 22:29:32,426 INFO L290 TraceCheckUtils]: 8: Hoare triple {92179#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {92535#(or (<= |correct_version_#in~n| (* |correct_version_#in~a| 4)) (< (+ correct_version_~b~0 (* 4 correct_version_~a)) correct_version_~n))} is VALID [2022-04-27 22:29:32,426 INFO L272 TraceCheckUtils]: 7: Hoare triple {92179#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:32,426 INFO L290 TraceCheckUtils]: 6: Hoare triple {92179#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:32,426 INFO L290 TraceCheckUtils]: 5: Hoare triple {92179#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {92179#true} is VALID [2022-04-27 22:29:32,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {92179#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:32,427 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92179#true} {92179#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:32,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {92179#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:32,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {92179#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {92179#true} is VALID [2022-04-27 22:29:32,427 INFO L272 TraceCheckUtils]: 0: Hoare triple {92179#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92179#true} is VALID [2022-04-27 22:29:32,427 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-27 22:29:32,427 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1537537762] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:29:32,427 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:29:32,427 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 15, 15] total 39 [2022-04-27 22:29:32,427 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [997540930] [2022-04-27 22:29:32,427 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:29:32,428 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 51 [2022-04-27 22:29:32,428 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:29:32,428 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:29:32,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:29:32,456 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-04-27 22:29:32,456 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:29:32,457 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-04-27 22:29:32,457 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=1348, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:29:32,457 INFO L87 Difference]: Start difference. First operand 518 states and 595 transitions. Second operand has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:29:40,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:40,019 INFO L93 Difference]: Finished difference Result 590 states and 681 transitions. [2022-04-27 22:29:40,019 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 22:29:40,019 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 51 [2022-04-27 22:29:40,019 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:29:40,019 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:29:40,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 130 transitions. [2022-04-27 22:29:40,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:29:40,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 130 transitions. [2022-04-27 22:29:40,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 130 transitions. [2022-04-27 22:29:40,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:29:40,127 INFO L225 Difference]: With dead ends: 590 [2022-04-27 22:29:40,127 INFO L226 Difference]: Without dead ends: 573 [2022-04-27 22:29:40,129 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 81 SyntacticMatches, 5 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 446 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=325, Invalid=3097, Unknown=0, NotChecked=0, Total=3422 [2022-04-27 22:29:40,129 INFO L413 NwaCegarLoop]: 71 mSDtfsCounter, 447 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 1862 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 451 SdHoareTripleChecker+Valid, 168 SdHoareTripleChecker+Invalid, 1912 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 1862 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:29:40,130 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [451 Valid, 168 Invalid, 1912 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 1862 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-27 22:29:40,134 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 573 states. [2022-04-27 22:29:42,803 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 573 to 568. [2022-04-27 22:29:42,803 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:29:42,803 INFO L82 GeneralOperation]: Start isEquivalent. First operand 573 states. Second operand has 568 states, 490 states have (on average 1.153061224489796) internal successors, (565), 536 states have internal predecessors, (565), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:42,804 INFO L74 IsIncluded]: Start isIncluded. First operand 573 states. Second operand has 568 states, 490 states have (on average 1.153061224489796) internal successors, (565), 536 states have internal predecessors, (565), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:42,804 INFO L87 Difference]: Start difference. First operand 573 states. Second operand has 568 states, 490 states have (on average 1.153061224489796) internal successors, (565), 536 states have internal predecessors, (565), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:42,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:42,816 INFO L93 Difference]: Finished difference Result 573 states and 656 transitions. [2022-04-27 22:29:42,816 INFO L276 IsEmpty]: Start isEmpty. Operand 573 states and 656 transitions. [2022-04-27 22:29:42,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:42,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:42,819 INFO L74 IsIncluded]: Start isIncluded. First operand has 568 states, 490 states have (on average 1.153061224489796) internal successors, (565), 536 states have internal predecessors, (565), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) Second operand 573 states. [2022-04-27 22:29:42,820 INFO L87 Difference]: Start difference. First operand has 568 states, 490 states have (on average 1.153061224489796) internal successors, (565), 536 states have internal predecessors, (565), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) Second operand 573 states. [2022-04-27 22:29:42,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:42,833 INFO L93 Difference]: Finished difference Result 573 states and 656 transitions. [2022-04-27 22:29:42,834 INFO L276 IsEmpty]: Start isEmpty. Operand 573 states and 656 transitions. [2022-04-27 22:29:42,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:42,836 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:42,836 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:29:42,836 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:29:42,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 568 states, 490 states have (on average 1.153061224489796) internal successors, (565), 536 states have internal predecessors, (565), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:42,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 568 states to 568 states and 651 transitions. [2022-04-27 22:29:42,853 INFO L78 Accepts]: Start accepts. Automaton has 568 states and 651 transitions. Word has length 51 [2022-04-27 22:29:42,853 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:29:42,853 INFO L495 AbstractCegarLoop]: Abstraction has 568 states and 651 transitions. [2022-04-27 22:29:42,853 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:29:42,853 INFO L276 IsEmpty]: Start isEmpty. Operand 568 states and 651 transitions. [2022-04-27 22:29:42,856 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 22:29:42,856 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:29:42,856 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:29:42,872 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (55)] Ended with exit code 0 [2022-04-27 22:29:43,071 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable63,55 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:43,071 INFO L420 AbstractCegarLoop]: === Iteration 65 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:29:43,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:29:43,072 INFO L85 PathProgramCache]: Analyzing trace with hash -58898921, now seen corresponding path program 55 times [2022-04-27 22:29:43,072 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:29:43,072 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [513748976] [2022-04-27 22:29:43,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:29:43,072 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:29:43,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:43,148 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:29:43,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:43,156 INFO L290 TraceCheckUtils]: 0: Hoare triple {95470#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {95423#true} is VALID [2022-04-27 22:29:43,156 INFO L290 TraceCheckUtils]: 1: Hoare triple {95423#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:43,156 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {95423#true} {95423#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:43,156 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:29:43,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:43,302 INFO L290 TraceCheckUtils]: 0: Hoare triple {95423#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,303 INFO L290 TraceCheckUtils]: 2: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,303 INFO L290 TraceCheckUtils]: 3: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,304 INFO L290 TraceCheckUtils]: 4: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,304 INFO L290 TraceCheckUtils]: 5: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,305 INFO L290 TraceCheckUtils]: 6: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:43,305 INFO L290 TraceCheckUtils]: 7: Hoare triple {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:43,306 INFO L290 TraceCheckUtils]: 8: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:43,306 INFO L290 TraceCheckUtils]: 9: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95474#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 4))))} is VALID [2022-04-27 22:29:43,307 INFO L290 TraceCheckUtils]: 10: Hoare triple {95474#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 4))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95475#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:29:43,307 INFO L290 TraceCheckUtils]: 11: Hoare triple {95475#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95476#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} is VALID [2022-04-27 22:29:43,308 INFO L290 TraceCheckUtils]: 12: Hoare triple {95476#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95477#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:29:43,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {95477#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:43,309 INFO L290 TraceCheckUtils]: 14: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:43,310 INFO L290 TraceCheckUtils]: 15: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:43,310 INFO L290 TraceCheckUtils]: 16: Hoare triple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:43,311 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {95423#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {95446#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:29:43,311 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:29:43,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:43,510 INFO L290 TraceCheckUtils]: 0: Hoare triple {95423#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,511 INFO L290 TraceCheckUtils]: 2: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,512 INFO L290 TraceCheckUtils]: 3: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,512 INFO L290 TraceCheckUtils]: 4: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,513 INFO L290 TraceCheckUtils]: 5: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,513 INFO L290 TraceCheckUtils]: 6: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:43,513 INFO L290 TraceCheckUtils]: 7: Hoare triple {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:43,514 INFO L290 TraceCheckUtils]: 8: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:43,514 INFO L290 TraceCheckUtils]: 9: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95483#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 8) (<= 8 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:29:43,515 INFO L290 TraceCheckUtils]: 10: Hoare triple {95483#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 8) (<= 8 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95484#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 8) (<= 8 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:29:43,515 INFO L290 TraceCheckUtils]: 11: Hoare triple {95484#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 8) (<= 8 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95485#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} is VALID [2022-04-27 22:29:43,516 INFO L290 TraceCheckUtils]: 12: Hoare triple {95485#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95486#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:43,516 INFO L290 TraceCheckUtils]: 13: Hoare triple {95486#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:43,516 INFO L290 TraceCheckUtils]: 14: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:43,516 INFO L290 TraceCheckUtils]: 15: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:43,517 INFO L290 TraceCheckUtils]: 16: Hoare triple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:43,517 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {95466#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:43,518 INFO L272 TraceCheckUtils]: 0: Hoare triple {95423#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95470#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:29:43,518 INFO L290 TraceCheckUtils]: 1: Hoare triple {95470#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {95423#true} is VALID [2022-04-27 22:29:43,518 INFO L290 TraceCheckUtils]: 2: Hoare triple {95423#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:43,518 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {95423#true} {95423#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:43,518 INFO L272 TraceCheckUtils]: 4: Hoare triple {95423#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:43,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {95423#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:43,518 INFO L290 TraceCheckUtils]: 6: Hoare triple {95423#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:43,518 INFO L272 TraceCheckUtils]: 7: Hoare triple {95423#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:43,519 INFO L290 TraceCheckUtils]: 8: Hoare triple {95423#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,519 INFO L290 TraceCheckUtils]: 10: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,520 INFO L290 TraceCheckUtils]: 11: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,520 INFO L290 TraceCheckUtils]: 12: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,520 INFO L290 TraceCheckUtils]: 13: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:43,520 INFO L290 TraceCheckUtils]: 14: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:43,521 INFO L290 TraceCheckUtils]: 15: Hoare triple {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:43,521 INFO L290 TraceCheckUtils]: 16: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:43,521 INFO L290 TraceCheckUtils]: 17: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95474#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 4))))} is VALID [2022-04-27 22:29:43,522 INFO L290 TraceCheckUtils]: 18: Hoare triple {95474#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 4))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95475#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:29:43,522 INFO L290 TraceCheckUtils]: 19: Hoare triple {95475#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95476#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} is VALID [2022-04-27 22:29:43,522 INFO L290 TraceCheckUtils]: 20: Hoare triple {95476#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95477#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:29:43,523 INFO L290 TraceCheckUtils]: 21: Hoare triple {95477#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:43,523 INFO L290 TraceCheckUtils]: 22: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:43,523 INFO L290 TraceCheckUtils]: 23: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:43,524 INFO L290 TraceCheckUtils]: 24: Hoare triple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:43,524 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {95423#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {95446#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:29:43,524 INFO L290 TraceCheckUtils]: 26: Hoare triple {95446#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:29:43,524 INFO L272 TraceCheckUtils]: 27: Hoare triple {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:43,525 INFO L290 TraceCheckUtils]: 28: Hoare triple {95423#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,525 INFO L290 TraceCheckUtils]: 29: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,525 INFO L290 TraceCheckUtils]: 30: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,525 INFO L290 TraceCheckUtils]: 31: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,526 INFO L290 TraceCheckUtils]: 32: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,526 INFO L290 TraceCheckUtils]: 33: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:43,526 INFO L290 TraceCheckUtils]: 34: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:43,527 INFO L290 TraceCheckUtils]: 35: Hoare triple {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:43,527 INFO L290 TraceCheckUtils]: 36: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:43,527 INFO L290 TraceCheckUtils]: 37: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95483#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 8) (<= 8 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:29:43,528 INFO L290 TraceCheckUtils]: 38: Hoare triple {95483#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 8) (<= 8 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95484#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 8) (<= 8 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:29:43,528 INFO L290 TraceCheckUtils]: 39: Hoare triple {95484#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 8) (<= 8 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95485#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} is VALID [2022-04-27 22:29:43,528 INFO L290 TraceCheckUtils]: 40: Hoare triple {95485#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95486#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:43,529 INFO L290 TraceCheckUtils]: 41: Hoare triple {95486#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:43,529 INFO L290 TraceCheckUtils]: 42: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:43,529 INFO L290 TraceCheckUtils]: 43: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:43,529 INFO L290 TraceCheckUtils]: 44: Hoare triple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:43,530 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {95466#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:43,530 INFO L290 TraceCheckUtils]: 46: Hoare triple {95466#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {95467#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:29:43,531 INFO L272 TraceCheckUtils]: 47: Hoare triple {95467#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {95468#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:29:43,531 INFO L290 TraceCheckUtils]: 48: Hoare triple {95468#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {95469#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:29:43,531 INFO L290 TraceCheckUtils]: 49: Hoare triple {95469#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {95424#false} is VALID [2022-04-27 22:29:43,531 INFO L290 TraceCheckUtils]: 50: Hoare triple {95424#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95424#false} is VALID [2022-04-27 22:29:43,531 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:29:43,532 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:29:43,532 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [513748976] [2022-04-27 22:29:43,532 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [513748976] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:29:43,532 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [755437283] [2022-04-27 22:29:43,532 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:29:43,532 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:43,532 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:29:43,533 INFO L229 MonitoredProcess]: Starting monitored process 56 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:29:43,533 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (56)] Waiting until timeout for monitored process [2022-04-27 22:29:43,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:43,627 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 47 conjunts are in the unsatisfiable core [2022-04-27 22:29:43,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:43,632 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:29:44,426 INFO L272 TraceCheckUtils]: 0: Hoare triple {95423#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {95423#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {95423#true} is VALID [2022-04-27 22:29:44,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {95423#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,427 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {95423#true} {95423#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {95423#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {95423#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:44,427 INFO L290 TraceCheckUtils]: 6: Hoare triple {95423#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,427 INFO L272 TraceCheckUtils]: 7: Hoare triple {95423#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:44,428 INFO L290 TraceCheckUtils]: 8: Hoare triple {95423#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,428 INFO L290 TraceCheckUtils]: 9: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,428 INFO L290 TraceCheckUtils]: 10: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,429 INFO L290 TraceCheckUtils]: 11: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,429 INFO L290 TraceCheckUtils]: 12: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,429 INFO L290 TraceCheckUtils]: 13: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,430 INFO L290 TraceCheckUtils]: 14: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:44,430 INFO L290 TraceCheckUtils]: 15: Hoare triple {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:44,431 INFO L290 TraceCheckUtils]: 16: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:44,431 INFO L290 TraceCheckUtils]: 17: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95543#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:29:44,431 INFO L290 TraceCheckUtils]: 18: Hoare triple {95543#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95547#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} is VALID [2022-04-27 22:29:44,432 INFO L290 TraceCheckUtils]: 19: Hoare triple {95547#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95551#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 (* correct_version_~j~0 2)))} is VALID [2022-04-27 22:29:44,432 INFO L290 TraceCheckUtils]: 20: Hoare triple {95551#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 (* correct_version_~j~0 2)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95555#(and (= (* correct_version_~j~0 2) (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))) (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:44,433 INFO L290 TraceCheckUtils]: 21: Hoare triple {95555#(and (= (* correct_version_~j~0 2) (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))) (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:44,433 INFO L290 TraceCheckUtils]: 22: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:44,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:44,434 INFO L290 TraceCheckUtils]: 24: Hoare triple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:44,435 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {95423#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {95446#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:29:44,435 INFO L290 TraceCheckUtils]: 26: Hoare triple {95446#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:29:44,435 INFO L272 TraceCheckUtils]: 27: Hoare triple {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:44,435 INFO L290 TraceCheckUtils]: 28: Hoare triple {95423#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,436 INFO L290 TraceCheckUtils]: 29: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,436 INFO L290 TraceCheckUtils]: 30: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,436 INFO L290 TraceCheckUtils]: 31: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,437 INFO L290 TraceCheckUtils]: 32: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,437 INFO L290 TraceCheckUtils]: 33: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,438 INFO L290 TraceCheckUtils]: 34: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:44,438 INFO L290 TraceCheckUtils]: 35: Hoare triple {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,438 INFO L290 TraceCheckUtils]: 36: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,439 INFO L290 TraceCheckUtils]: 37: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95607#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,439 INFO L290 TraceCheckUtils]: 38: Hoare triple {95607#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95611#(and (<= student_version_~j~1 2) (= student_version_~j~1 student_version_~y~1) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,440 INFO L290 TraceCheckUtils]: 39: Hoare triple {95611#(and (<= student_version_~j~1 2) (= student_version_~j~1 student_version_~y~1) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95615#(and (<= student_version_~j~1 2) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,440 INFO L290 TraceCheckUtils]: 40: Hoare triple {95615#(and (<= student_version_~j~1 2) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95619#(and (<= student_version_~j~1 2) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,441 INFO L290 TraceCheckUtils]: 41: Hoare triple {95619#(and (<= student_version_~j~1 2) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:44,441 INFO L290 TraceCheckUtils]: 42: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:44,441 INFO L290 TraceCheckUtils]: 43: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:44,442 INFO L290 TraceCheckUtils]: 44: Hoare triple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:44,442 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {95635#(and (<= |main_#t~ret9| 8) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8) (<= 8 |main_#t~ret9|))} is VALID [2022-04-27 22:29:44,443 INFO L290 TraceCheckUtils]: 46: Hoare triple {95635#(and (<= |main_#t~ret9| 8) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8) (<= 8 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {95639#(and (<= main_~n_stones2~0 8) (<= 8 main_~n_stones2~0) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:29:44,443 INFO L272 TraceCheckUtils]: 47: Hoare triple {95639#(and (<= main_~n_stones2~0 8) (<= 8 main_~n_stones2~0) (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {95643#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:29:44,444 INFO L290 TraceCheckUtils]: 48: Hoare triple {95643#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {95647#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:29:44,444 INFO L290 TraceCheckUtils]: 49: Hoare triple {95647#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {95424#false} is VALID [2022-04-27 22:29:44,444 INFO L290 TraceCheckUtils]: 50: Hoare triple {95424#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95424#false} is VALID [2022-04-27 22:29:44,444 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:29:44,444 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:29:44,934 INFO L290 TraceCheckUtils]: 50: Hoare triple {95424#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95424#false} is VALID [2022-04-27 22:29:44,934 INFO L290 TraceCheckUtils]: 49: Hoare triple {95647#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {95424#false} is VALID [2022-04-27 22:29:44,935 INFO L290 TraceCheckUtils]: 48: Hoare triple {95643#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {95647#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:29:44,935 INFO L272 TraceCheckUtils]: 47: Hoare triple {95467#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {95643#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:29:44,936 INFO L290 TraceCheckUtils]: 46: Hoare triple {95466#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {95467#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:29:44,936 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {95466#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:29:44,937 INFO L290 TraceCheckUtils]: 44: Hoare triple {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:44,937 INFO L290 TraceCheckUtils]: 43: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {95488#(and (<= |student_version_#res| 8) (<= 8 |student_version_#res|))} is VALID [2022-04-27 22:29:44,937 INFO L290 TraceCheckUtils]: 42: Hoare triple {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:44,938 INFO L290 TraceCheckUtils]: 41: Hoare triple {95486#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95487#(and (<= student_version_~y~1 8) (<= 8 student_version_~y~1))} is VALID [2022-04-27 22:29:44,938 INFO L290 TraceCheckUtils]: 40: Hoare triple {95485#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95486#(and (<= (+ student_version_~j~1 student_version_~y~1) 8) (<= 8 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:29:44,939 INFO L290 TraceCheckUtils]: 39: Hoare triple {95484#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 8) (<= 8 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95485#(and (<= 8 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 8))} is VALID [2022-04-27 22:29:44,939 INFO L290 TraceCheckUtils]: 38: Hoare triple {95483#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 8) (<= 8 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95484#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 8) (<= 8 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:29:44,940 INFO L290 TraceCheckUtils]: 37: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {95483#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 8) (<= 8 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:29:44,940 INFO L290 TraceCheckUtils]: 36: Hoare triple {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,941 INFO L290 TraceCheckUtils]: 35: Hoare triple {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95482#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:29:44,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {95481#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:29:44,941 INFO L290 TraceCheckUtils]: 33: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,942 INFO L290 TraceCheckUtils]: 32: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,942 INFO L290 TraceCheckUtils]: 31: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,943 INFO L290 TraceCheckUtils]: 30: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,943 INFO L290 TraceCheckUtils]: 29: Hoare triple {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,943 INFO L290 TraceCheckUtils]: 28: Hoare triple {95423#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {95480#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:29:44,943 INFO L272 TraceCheckUtils]: 27: Hoare triple {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:44,944 INFO L290 TraceCheckUtils]: 26: Hoare triple {95446#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {95447#(and (<= 8 main_~n_stones1~0) (<= main_~n_stones1~0 8))} is VALID [2022-04-27 22:29:44,944 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} {95423#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {95446#(and (<= 8 |main_#t~ret8|) (<= |main_#t~ret8| 8))} is VALID [2022-04-27 22:29:44,945 INFO L290 TraceCheckUtils]: 24: Hoare triple {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:44,945 INFO L290 TraceCheckUtils]: 23: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {95479#(and (<= 8 |correct_version_#res|) (<= |correct_version_#res| 8))} is VALID [2022-04-27 22:29:44,945 INFO L290 TraceCheckUtils]: 22: Hoare triple {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:44,946 INFO L290 TraceCheckUtils]: 21: Hoare triple {95477#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95478#(and (<= correct_version_~y~0 8) (<= 8 correct_version_~y~0))} is VALID [2022-04-27 22:29:44,946 INFO L290 TraceCheckUtils]: 20: Hoare triple {95476#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95477#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 8) (<= 8 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:29:44,947 INFO L290 TraceCheckUtils]: 19: Hoare triple {95475#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95476#(and (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 8))} is VALID [2022-04-27 22:29:44,947 INFO L290 TraceCheckUtils]: 18: Hoare triple {95474#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 4))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95475#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:29:44,948 INFO L290 TraceCheckUtils]: 17: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {95474#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 8) (<= 8 (+ correct_version_~y~0 (* correct_version_~j~0 4))))} is VALID [2022-04-27 22:29:44,948 INFO L290 TraceCheckUtils]: 16: Hoare triple {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:44,949 INFO L290 TraceCheckUtils]: 15: Hoare triple {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95473#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:29:44,949 INFO L290 TraceCheckUtils]: 14: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {95472#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:29:44,949 INFO L290 TraceCheckUtils]: 13: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,950 INFO L290 TraceCheckUtils]: 12: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,950 INFO L290 TraceCheckUtils]: 11: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,950 INFO L290 TraceCheckUtils]: 10: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,951 INFO L290 TraceCheckUtils]: 9: Hoare triple {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,951 INFO L290 TraceCheckUtils]: 8: Hoare triple {95423#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {95471#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:29:44,951 INFO L272 TraceCheckUtils]: 7: Hoare triple {95423#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:44,951 INFO L290 TraceCheckUtils]: 6: Hoare triple {95423#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,951 INFO L290 TraceCheckUtils]: 5: Hoare triple {95423#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {95423#true} is VALID [2022-04-27 22:29:44,952 INFO L272 TraceCheckUtils]: 4: Hoare triple {95423#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,952 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {95423#true} {95423#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,952 INFO L290 TraceCheckUtils]: 2: Hoare triple {95423#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,952 INFO L290 TraceCheckUtils]: 1: Hoare triple {95423#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {95423#true} is VALID [2022-04-27 22:29:44,952 INFO L272 TraceCheckUtils]: 0: Hoare triple {95423#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95423#true} is VALID [2022-04-27 22:29:44,952 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 26 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:29:44,952 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [755437283] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:29:44,952 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:29:44,952 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 26, 26] total 39 [2022-04-27 22:29:44,952 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1680633433] [2022-04-27 22:29:44,952 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:29:44,953 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:29:44,953 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:29:44,953 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:44,993 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-27 22:29:44,993 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-04-27 22:29:44,993 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:29:44,993 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-04-27 22:29:44,994 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=1385, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:29:44,994 INFO L87 Difference]: Start difference. First operand 568 states and 651 transitions. Second operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:50,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:50,536 INFO L93 Difference]: Finished difference Result 586 states and 673 transitions. [2022-04-27 22:29:50,536 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-27 22:29:50,536 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 51 [2022-04-27 22:29:50,536 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:29:50,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:50,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 100 transitions. [2022-04-27 22:29:50,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:50,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 100 transitions. [2022-04-27 22:29:50,539 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 100 transitions. [2022-04-27 22:29:50,588 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:29:50,605 INFO L225 Difference]: With dead ends: 586 [2022-04-27 22:29:50,605 INFO L226 Difference]: Without dead ends: 569 [2022-04-27 22:29:50,607 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 86 SyntacticMatches, 9 SemanticMatches, 62 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 687 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=247, Invalid=3785, Unknown=0, NotChecked=0, Total=4032 [2022-04-27 22:29:50,608 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 76 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 1889 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 188 SdHoareTripleChecker+Invalid, 1923 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 1889 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:29:50,608 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 188 Invalid, 1923 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 1889 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-27 22:29:50,612 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 569 states. [2022-04-27 22:29:53,275 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 569 to 564. [2022-04-27 22:29:53,276 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:29:53,276 INFO L82 GeneralOperation]: Start isEquivalent. First operand 569 states. Second operand has 564 states, 486 states have (on average 1.1563786008230452) internal successors, (562), 532 states have internal predecessors, (562), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:53,277 INFO L74 IsIncluded]: Start isIncluded. First operand 569 states. Second operand has 564 states, 486 states have (on average 1.1563786008230452) internal successors, (562), 532 states have internal predecessors, (562), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:53,277 INFO L87 Difference]: Start difference. First operand 569 states. Second operand has 564 states, 486 states have (on average 1.1563786008230452) internal successors, (562), 532 states have internal predecessors, (562), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:53,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:53,289 INFO L93 Difference]: Finished difference Result 569 states and 653 transitions. [2022-04-27 22:29:53,289 INFO L276 IsEmpty]: Start isEmpty. Operand 569 states and 653 transitions. [2022-04-27 22:29:53,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:53,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:53,292 INFO L74 IsIncluded]: Start isIncluded. First operand has 564 states, 486 states have (on average 1.1563786008230452) internal successors, (562), 532 states have internal predecessors, (562), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) Second operand 569 states. [2022-04-27 22:29:53,292 INFO L87 Difference]: Start difference. First operand has 564 states, 486 states have (on average 1.1563786008230452) internal successors, (562), 532 states have internal predecessors, (562), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) Second operand 569 states. [2022-04-27 22:29:53,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:29:53,304 INFO L93 Difference]: Finished difference Result 569 states and 653 transitions. [2022-04-27 22:29:53,304 INFO L276 IsEmpty]: Start isEmpty. Operand 569 states and 653 transitions. [2022-04-27 22:29:53,306 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:29:53,306 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:29:53,306 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:29:53,306 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:29:53,307 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 564 states, 486 states have (on average 1.1563786008230452) internal successors, (562), 532 states have internal predecessors, (562), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (58), 26 states have call predecessors, (58), 26 states have call successors, (58) [2022-04-27 22:29:53,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 564 states to 564 states and 648 transitions. [2022-04-27 22:29:53,322 INFO L78 Accepts]: Start accepts. Automaton has 564 states and 648 transitions. Word has length 51 [2022-04-27 22:29:53,322 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:29:53,322 INFO L495 AbstractCegarLoop]: Abstraction has 564 states and 648 transitions. [2022-04-27 22:29:53,322 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 39 states, 36 states have (on average 1.4166666666666667) internal successors, (51), 33 states have internal predecessors, (51), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:29:53,322 INFO L276 IsEmpty]: Start isEmpty. Operand 564 states and 648 transitions. [2022-04-27 22:29:53,325 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 22:29:53,325 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:29:53,325 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:29:53,343 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (56)] Ended with exit code 0 [2022-04-27 22:29:53,530 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable64,56 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:53,530 INFO L420 AbstractCegarLoop]: === Iteration 66 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:29:53,530 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:29:53,530 INFO L85 PathProgramCache]: Analyzing trace with hash -269481222, now seen corresponding path program 56 times [2022-04-27 22:29:53,530 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:29:53,530 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1646507786] [2022-04-27 22:29:53,530 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:29:53,531 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:29:53,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:53,576 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:29:53,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:53,579 INFO L290 TraceCheckUtils]: 0: Hoare triple {98698#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {98656#true} is VALID [2022-04-27 22:29:53,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {98656#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:53,579 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {98656#true} {98656#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:53,579 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:29:53,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:53,669 INFO L290 TraceCheckUtils]: 0: Hoare triple {98656#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {98699#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,669 INFO L290 TraceCheckUtils]: 1: Hoare triple {98699#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98700#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {98700#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98701#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,670 INFO L290 TraceCheckUtils]: 3: Hoare triple {98701#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98702#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,671 INFO L290 TraceCheckUtils]: 4: Hoare triple {98702#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98703#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {98703#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98704#(and (<= (+ (* 4 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,672 INFO L290 TraceCheckUtils]: 6: Hoare triple {98704#(and (<= (+ (* 4 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {98705#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 4 correct_version_~a) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:29:53,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {98705#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 4 correct_version_~a) 1) |correct_version_#in~n|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,672 INFO L290 TraceCheckUtils]: 9: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,673 INFO L290 TraceCheckUtils]: 10: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,673 INFO L290 TraceCheckUtils]: 11: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,673 INFO L290 TraceCheckUtils]: 12: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,673 INFO L290 TraceCheckUtils]: 13: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,673 INFO L290 TraceCheckUtils]: 14: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,674 INFO L290 TraceCheckUtils]: 15: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,674 INFO L290 TraceCheckUtils]: 16: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,674 INFO L290 TraceCheckUtils]: 17: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,675 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} {98656#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} is VALID [2022-04-27 22:29:53,675 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:29:53,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:53,780 INFO L290 TraceCheckUtils]: 0: Hoare triple {98656#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {98707#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {98707#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98708#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {98708#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98709#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,781 INFO L290 TraceCheckUtils]: 3: Hoare triple {98709#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98710#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,782 INFO L290 TraceCheckUtils]: 4: Hoare triple {98710#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98711#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,782 INFO L290 TraceCheckUtils]: 5: Hoare triple {98711#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {98712#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* student_version_~a 4)))} is VALID [2022-04-27 22:29:53,782 INFO L290 TraceCheckUtils]: 6: Hoare triple {98712#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,783 INFO L290 TraceCheckUtils]: 7: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,783 INFO L290 TraceCheckUtils]: 8: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,783 INFO L290 TraceCheckUtils]: 9: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,783 INFO L290 TraceCheckUtils]: 10: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,783 INFO L290 TraceCheckUtils]: 11: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,784 INFO L290 TraceCheckUtils]: 12: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,784 INFO L290 TraceCheckUtils]: 14: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,784 INFO L290 TraceCheckUtils]: 15: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,785 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {98657#false} is VALID [2022-04-27 22:29:53,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {98656#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98698#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:29:53,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {98698#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {98656#true} is VALID [2022-04-27 22:29:53,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {98656#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:53,785 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {98656#true} {98656#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:53,785 INFO L272 TraceCheckUtils]: 4: Hoare triple {98656#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:53,785 INFO L290 TraceCheckUtils]: 5: Hoare triple {98656#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:53,786 INFO L290 TraceCheckUtils]: 6: Hoare triple {98656#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:53,786 INFO L272 TraceCheckUtils]: 7: Hoare triple {98656#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:53,786 INFO L290 TraceCheckUtils]: 8: Hoare triple {98656#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {98699#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,786 INFO L290 TraceCheckUtils]: 9: Hoare triple {98699#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98700#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,787 INFO L290 TraceCheckUtils]: 10: Hoare triple {98700#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98701#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,787 INFO L290 TraceCheckUtils]: 11: Hoare triple {98701#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98702#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,788 INFO L290 TraceCheckUtils]: 12: Hoare triple {98702#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98703#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,788 INFO L290 TraceCheckUtils]: 13: Hoare triple {98703#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98704#(and (<= (+ (* 4 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:53,788 INFO L290 TraceCheckUtils]: 14: Hoare triple {98704#(and (<= (+ (* 4 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {98705#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 4 correct_version_~a) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:29:53,789 INFO L290 TraceCheckUtils]: 15: Hoare triple {98705#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 4 correct_version_~a) 1) |correct_version_#in~n|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,789 INFO L290 TraceCheckUtils]: 16: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,789 INFO L290 TraceCheckUtils]: 17: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,789 INFO L290 TraceCheckUtils]: 18: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,790 INFO L290 TraceCheckUtils]: 19: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,790 INFO L290 TraceCheckUtils]: 20: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,790 INFO L290 TraceCheckUtils]: 21: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,790 INFO L290 TraceCheckUtils]: 22: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,790 INFO L290 TraceCheckUtils]: 23: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,790 INFO L290 TraceCheckUtils]: 24: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,791 INFO L290 TraceCheckUtils]: 25: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:53,791 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} {98656#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} is VALID [2022-04-27 22:29:53,791 INFO L290 TraceCheckUtils]: 27: Hoare triple {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} is VALID [2022-04-27 22:29:53,792 INFO L272 TraceCheckUtils]: 28: Hoare triple {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:53,792 INFO L290 TraceCheckUtils]: 29: Hoare triple {98656#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {98707#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,792 INFO L290 TraceCheckUtils]: 30: Hoare triple {98707#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98708#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,793 INFO L290 TraceCheckUtils]: 31: Hoare triple {98708#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98709#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,793 INFO L290 TraceCheckUtils]: 32: Hoare triple {98709#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98710#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,794 INFO L290 TraceCheckUtils]: 33: Hoare triple {98710#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98711#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:29:53,794 INFO L290 TraceCheckUtils]: 34: Hoare triple {98711#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {98712#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* student_version_~a 4)))} is VALID [2022-04-27 22:29:53,794 INFO L290 TraceCheckUtils]: 35: Hoare triple {98712#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,794 INFO L290 TraceCheckUtils]: 36: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,795 INFO L290 TraceCheckUtils]: 37: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,795 INFO L290 TraceCheckUtils]: 38: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,795 INFO L290 TraceCheckUtils]: 39: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,795 INFO L290 TraceCheckUtils]: 40: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,796 INFO L290 TraceCheckUtils]: 41: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,796 INFO L290 TraceCheckUtils]: 42: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,796 INFO L290 TraceCheckUtils]: 43: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,796 INFO L290 TraceCheckUtils]: 44: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:53,797 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {98657#false} is VALID [2022-04-27 22:29:53,797 INFO L290 TraceCheckUtils]: 46: Hoare triple {98657#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {98657#false} is VALID [2022-04-27 22:29:53,797 INFO L272 TraceCheckUtils]: 47: Hoare triple {98657#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {98657#false} is VALID [2022-04-27 22:29:53,797 INFO L290 TraceCheckUtils]: 48: Hoare triple {98657#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {98657#false} is VALID [2022-04-27 22:29:53,797 INFO L290 TraceCheckUtils]: 49: Hoare triple {98657#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {98657#false} is VALID [2022-04-27 22:29:53,797 INFO L290 TraceCheckUtils]: 50: Hoare triple {98657#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98657#false} is VALID [2022-04-27 22:29:53,797 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 27 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-27 22:29:53,797 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:29:53,797 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1646507786] [2022-04-27 22:29:53,797 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1646507786] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:29:53,797 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1444905929] [2022-04-27 22:29:53,798 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:29:53,798 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:29:53,798 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:29:53,799 INFO L229 MonitoredProcess]: Starting monitored process 57 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:29:53,800 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (57)] Waiting until timeout for monitored process [2022-04-27 22:29:53,873 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:29:53,873 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:29:53,874 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 22:29:53,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:29:53,883 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:29:55,083 INFO L272 TraceCheckUtils]: 0: Hoare triple {98656#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:55,084 INFO L290 TraceCheckUtils]: 1: Hoare triple {98656#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {98656#true} is VALID [2022-04-27 22:29:55,084 INFO L290 TraceCheckUtils]: 2: Hoare triple {98656#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:55,084 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {98656#true} {98656#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:55,084 INFO L272 TraceCheckUtils]: 4: Hoare triple {98656#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:55,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {98656#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:55,084 INFO L290 TraceCheckUtils]: 6: Hoare triple {98656#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:55,084 INFO L272 TraceCheckUtils]: 7: Hoare triple {98656#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:55,085 INFO L290 TraceCheckUtils]: 8: Hoare triple {98656#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {98741#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:55,085 INFO L290 TraceCheckUtils]: 9: Hoare triple {98741#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98745#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:55,086 INFO L290 TraceCheckUtils]: 10: Hoare triple {98745#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98749#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:55,086 INFO L290 TraceCheckUtils]: 11: Hoare triple {98749#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98753#(and (<= correct_version_~n |correct_version_#in~n|) (<= (* 3 correct_version_~a) correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:29:55,087 INFO L290 TraceCheckUtils]: 12: Hoare triple {98753#(and (<= correct_version_~n |correct_version_#in~n|) (<= (* 3 correct_version_~a) correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98757#(and (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| (div correct_version_~b~0 4)))} is VALID [2022-04-27 22:29:55,087 INFO L290 TraceCheckUtils]: 13: Hoare triple {98757#(and (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| (div correct_version_~b~0 4)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,088 INFO L290 TraceCheckUtils]: 14: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,088 INFO L290 TraceCheckUtils]: 15: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,088 INFO L290 TraceCheckUtils]: 16: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,088 INFO L290 TraceCheckUtils]: 17: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,088 INFO L290 TraceCheckUtils]: 18: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,089 INFO L290 TraceCheckUtils]: 19: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,089 INFO L290 TraceCheckUtils]: 20: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,089 INFO L290 TraceCheckUtils]: 21: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,089 INFO L290 TraceCheckUtils]: 22: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,089 INFO L290 TraceCheckUtils]: 23: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,090 INFO L290 TraceCheckUtils]: 24: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,090 INFO L290 TraceCheckUtils]: 25: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:55,090 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} {98656#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} is VALID [2022-04-27 22:29:55,091 INFO L290 TraceCheckUtils]: 27: Hoare triple {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} is VALID [2022-04-27 22:29:55,091 INFO L272 TraceCheckUtils]: 28: Hoare triple {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:55,091 INFO L290 TraceCheckUtils]: 29: Hoare triple {98656#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {98809#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:29:55,092 INFO L290 TraceCheckUtils]: 30: Hoare triple {98809#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98813#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} is VALID [2022-04-27 22:29:55,092 INFO L290 TraceCheckUtils]: 31: Hoare triple {98813#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98817#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:29:55,093 INFO L290 TraceCheckUtils]: 32: Hoare triple {98817#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* 2 student_version_~a)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98821#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:29:55,093 INFO L290 TraceCheckUtils]: 33: Hoare triple {98821#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98825#(and (<= |student_version_#in~n| student_version_~n) (<= (div (- student_version_~b~1) (- 4)) |student_version_#in~a|))} is VALID [2022-04-27 22:29:55,094 INFO L290 TraceCheckUtils]: 34: Hoare triple {98825#(and (<= |student_version_#in~n| student_version_~n) (<= (div (- student_version_~b~1) (- 4)) |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,094 INFO L290 TraceCheckUtils]: 35: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,094 INFO L290 TraceCheckUtils]: 36: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,094 INFO L290 TraceCheckUtils]: 37: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,094 INFO L290 TraceCheckUtils]: 38: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,095 INFO L290 TraceCheckUtils]: 39: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,095 INFO L290 TraceCheckUtils]: 40: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,095 INFO L290 TraceCheckUtils]: 41: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,095 INFO L290 TraceCheckUtils]: 42: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,096 INFO L290 TraceCheckUtils]: 43: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,096 INFO L290 TraceCheckUtils]: 44: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:55,096 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {98657#false} is VALID [2022-04-27 22:29:55,096 INFO L290 TraceCheckUtils]: 46: Hoare triple {98657#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {98657#false} is VALID [2022-04-27 22:29:55,097 INFO L272 TraceCheckUtils]: 47: Hoare triple {98657#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {98657#false} is VALID [2022-04-27 22:29:55,097 INFO L290 TraceCheckUtils]: 48: Hoare triple {98657#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {98657#false} is VALID [2022-04-27 22:29:55,097 INFO L290 TraceCheckUtils]: 49: Hoare triple {98657#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {98657#false} is VALID [2022-04-27 22:29:55,097 INFO L290 TraceCheckUtils]: 50: Hoare triple {98657#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98657#false} is VALID [2022-04-27 22:29:55,097 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-27 22:29:55,097 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:29:56,062 INFO L290 TraceCheckUtils]: 50: Hoare triple {98657#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98657#false} is VALID [2022-04-27 22:29:56,062 INFO L290 TraceCheckUtils]: 49: Hoare triple {98657#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {98657#false} is VALID [2022-04-27 22:29:56,062 INFO L290 TraceCheckUtils]: 48: Hoare triple {98657#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {98657#false} is VALID [2022-04-27 22:29:56,062 INFO L272 TraceCheckUtils]: 47: Hoare triple {98657#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {98657#false} is VALID [2022-04-27 22:29:56,062 INFO L290 TraceCheckUtils]: 46: Hoare triple {98657#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {98657#false} is VALID [2022-04-27 22:29:56,063 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {98657#false} is VALID [2022-04-27 22:29:56,063 INFO L290 TraceCheckUtils]: 44: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,063 INFO L290 TraceCheckUtils]: 43: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,063 INFO L290 TraceCheckUtils]: 42: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,064 INFO L290 TraceCheckUtils]: 41: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,064 INFO L290 TraceCheckUtils]: 40: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,064 INFO L290 TraceCheckUtils]: 39: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,064 INFO L290 TraceCheckUtils]: 38: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,065 INFO L290 TraceCheckUtils]: 37: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,065 INFO L290 TraceCheckUtils]: 36: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,065 INFO L290 TraceCheckUtils]: 35: Hoare triple {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,065 INFO L290 TraceCheckUtils]: 34: Hoare triple {98928#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< student_version_~b~1 student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {98713#(<= |student_version_#in~n| (* |student_version_#in~a| 4))} is VALID [2022-04-27 22:29:56,066 INFO L290 TraceCheckUtils]: 33: Hoare triple {98932#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< (+ student_version_~b~1 student_version_~a) student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98928#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< student_version_~b~1 student_version_~n))} is VALID [2022-04-27 22:29:56,066 INFO L290 TraceCheckUtils]: 32: Hoare triple {98936#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98932#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< (+ student_version_~b~1 student_version_~a) student_version_~n))} is VALID [2022-04-27 22:29:56,067 INFO L290 TraceCheckUtils]: 31: Hoare triple {98940#(or (< (+ (* 3 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 4)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98936#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} is VALID [2022-04-27 22:29:56,067 INFO L290 TraceCheckUtils]: 30: Hoare triple {98944#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< (+ student_version_~b~1 (* student_version_~a 4)) student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {98940#(or (< (+ (* 3 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* |student_version_#in~a| 4)))} is VALID [2022-04-27 22:29:56,068 INFO L290 TraceCheckUtils]: 29: Hoare triple {98656#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {98944#(or (<= |student_version_#in~n| (* |student_version_#in~a| 4)) (< (+ student_version_~b~1 (* student_version_~a 4)) student_version_~n))} is VALID [2022-04-27 22:29:56,068 INFO L272 TraceCheckUtils]: 28: Hoare triple {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:56,068 INFO L290 TraceCheckUtils]: 27: Hoare triple {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} is VALID [2022-04-27 22:29:56,069 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} {98656#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {98680#(<= (+ (* main_~a~0 4) 1) main_~n~0)} is VALID [2022-04-27 22:29:56,069 INFO L290 TraceCheckUtils]: 25: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,069 INFO L290 TraceCheckUtils]: 24: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,069 INFO L290 TraceCheckUtils]: 23: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,069 INFO L290 TraceCheckUtils]: 22: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,070 INFO L290 TraceCheckUtils]: 21: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,070 INFO L290 TraceCheckUtils]: 20: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,070 INFO L290 TraceCheckUtils]: 19: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,070 INFO L290 TraceCheckUtils]: 18: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,070 INFO L290 TraceCheckUtils]: 17: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,071 INFO L290 TraceCheckUtils]: 16: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,071 INFO L290 TraceCheckUtils]: 15: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {98996#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98706#(<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:29:56,072 INFO L290 TraceCheckUtils]: 12: Hoare triple {99000#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {98996#(or (not (< correct_version_~b~0 correct_version_~n)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:29:56,072 INFO L290 TraceCheckUtils]: 11: Hoare triple {99004#(or (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {99000#(or (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:29:56,073 INFO L290 TraceCheckUtils]: 10: Hoare triple {99008#(or (<= correct_version_~n (+ correct_version_~b~0 (* 3 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {99004#(or (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:29:56,073 INFO L290 TraceCheckUtils]: 9: Hoare triple {99012#(or (<= correct_version_~n (+ correct_version_~b~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {99008#(or (<= correct_version_~n (+ correct_version_~b~0 (* 3 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:29:56,074 INFO L290 TraceCheckUtils]: 8: Hoare triple {98656#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {99012#(or (<= correct_version_~n (+ correct_version_~b~0 (* 4 correct_version_~a))) (<= (+ (* |correct_version_#in~a| 4) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:29:56,074 INFO L272 TraceCheckUtils]: 7: Hoare triple {98656#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:56,074 INFO L290 TraceCheckUtils]: 6: Hoare triple {98656#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:56,074 INFO L290 TraceCheckUtils]: 5: Hoare triple {98656#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {98656#true} is VALID [2022-04-27 22:29:56,074 INFO L272 TraceCheckUtils]: 4: Hoare triple {98656#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:56,074 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {98656#true} {98656#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:56,074 INFO L290 TraceCheckUtils]: 2: Hoare triple {98656#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:56,074 INFO L290 TraceCheckUtils]: 1: Hoare triple {98656#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {98656#true} is VALID [2022-04-27 22:29:56,075 INFO L272 TraceCheckUtils]: 0: Hoare triple {98656#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98656#true} is VALID [2022-04-27 22:29:56,075 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-27 22:29:56,075 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1444905929] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:29:56,075 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:29:56,075 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 15, 15] total 39 [2022-04-27 22:29:56,075 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [696796255] [2022-04-27 22:29:56,075 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:29:56,076 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 51 [2022-04-27 22:29:56,076 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:29:56,076 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:29:56,108 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:29:56,109 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-04-27 22:29:56,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:29:56,109 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-04-27 22:29:56,109 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=1348, Unknown=0, NotChecked=0, Total=1482 [2022-04-27 22:29:56,109 INFO L87 Difference]: Start difference. First operand 564 states and 648 transitions. Second operand has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:03,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:03,319 INFO L93 Difference]: Finished difference Result 578 states and 661 transitions. [2022-04-27 22:30:03,319 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 22:30:03,319 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 51 [2022-04-27 22:30:03,319 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:30:03,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:03,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 129 transitions. [2022-04-27 22:30:03,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:03,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 129 transitions. [2022-04-27 22:30:03,321 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 129 transitions. [2022-04-27 22:30:03,436 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:30:03,452 INFO L225 Difference]: With dead ends: 578 [2022-04-27 22:30:03,452 INFO L226 Difference]: Without dead ends: 554 [2022-04-27 22:30:03,454 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 80 SyntacticMatches, 6 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 454 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=325, Invalid=3097, Unknown=0, NotChecked=0, Total=3422 [2022-04-27 22:30:03,455 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 460 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 1775 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 469 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 1821 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 1775 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:30:03,455 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [469 Valid, 156 Invalid, 1821 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 1775 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-27 22:30:03,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 554 states. [2022-04-27 22:30:08,752 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 554 to 552. [2022-04-27 22:30:08,753 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:30:08,753 INFO L82 GeneralOperation]: Start isEquivalent. First operand 554 states. Second operand has 552 states, 474 states have (on average 1.1561181434599157) internal successors, (548), 520 states have internal predecessors, (548), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (52), 26 states have call predecessors, (52), 26 states have call successors, (52) [2022-04-27 22:30:08,754 INFO L74 IsIncluded]: Start isIncluded. First operand 554 states. Second operand has 552 states, 474 states have (on average 1.1561181434599157) internal successors, (548), 520 states have internal predecessors, (548), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (52), 26 states have call predecessors, (52), 26 states have call successors, (52) [2022-04-27 22:30:08,754 INFO L87 Difference]: Start difference. First operand 554 states. Second operand has 552 states, 474 states have (on average 1.1561181434599157) internal successors, (548), 520 states have internal predecessors, (548), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (52), 26 states have call predecessors, (52), 26 states have call successors, (52) [2022-04-27 22:30:08,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:08,771 INFO L93 Difference]: Finished difference Result 554 states and 630 transitions. [2022-04-27 22:30:08,771 INFO L276 IsEmpty]: Start isEmpty. Operand 554 states and 630 transitions. [2022-04-27 22:30:08,773 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:08,774 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:08,774 INFO L74 IsIncluded]: Start isIncluded. First operand has 552 states, 474 states have (on average 1.1561181434599157) internal successors, (548), 520 states have internal predecessors, (548), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (52), 26 states have call predecessors, (52), 26 states have call successors, (52) Second operand 554 states. [2022-04-27 22:30:08,775 INFO L87 Difference]: Start difference. First operand has 552 states, 474 states have (on average 1.1561181434599157) internal successors, (548), 520 states have internal predecessors, (548), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (52), 26 states have call predecessors, (52), 26 states have call successors, (52) Second operand 554 states. [2022-04-27 22:30:08,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:08,790 INFO L93 Difference]: Finished difference Result 554 states and 630 transitions. [2022-04-27 22:30:08,790 INFO L276 IsEmpty]: Start isEmpty. Operand 554 states and 630 transitions. [2022-04-27 22:30:08,792 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:08,792 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:08,792 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:30:08,792 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:30:08,793 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 552 states, 474 states have (on average 1.1561181434599157) internal successors, (548), 520 states have internal predecessors, (548), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (52), 26 states have call predecessors, (52), 26 states have call successors, (52) [2022-04-27 22:30:08,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 552 states to 552 states and 628 transitions. [2022-04-27 22:30:08,808 INFO L78 Accepts]: Start accepts. Automaton has 552 states and 628 transitions. Word has length 51 [2022-04-27 22:30:08,809 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:30:08,809 INFO L495 AbstractCegarLoop]: Abstraction has 552 states and 628 transitions. [2022-04-27 22:30:08,809 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 39 states, 39 states have (on average 1.641025641025641) internal successors, (64), 38 states have internal predecessors, (64), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:08,809 INFO L276 IsEmpty]: Start isEmpty. Operand 552 states and 628 transitions. [2022-04-27 22:30:08,812 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-27 22:30:08,812 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:30:08,812 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 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-27 22:30:08,828 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (57)] Forceful destruction successful, exit code 0 [2022-04-27 22:30:09,031 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable65,57 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:30:09,031 INFO L420 AbstractCegarLoop]: === Iteration 67 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:30:09,031 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:30:09,031 INFO L85 PathProgramCache]: Analyzing trace with hash -645861709, now seen corresponding path program 57 times [2022-04-27 22:30:09,031 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:30:09,031 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1543751099] [2022-04-27 22:30:09,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:30:09,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:30:09,049 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:09,064 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:30:09,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:09,067 INFO L290 TraceCheckUtils]: 0: Hoare triple {101855#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {101812#true} is VALID [2022-04-27 22:30:09,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {101812#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:09,067 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {101812#true} {101812#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:09,067 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:30:09,073 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:09,215 INFO L290 TraceCheckUtils]: 0: Hoare triple {101812#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:30:09,215 INFO L290 TraceCheckUtils]: 1: Hoare triple {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:30:09,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:30:09,216 INFO L290 TraceCheckUtils]: 3: Hoare triple {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101857#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:30:09,217 INFO L290 TraceCheckUtils]: 4: Hoare triple {101857#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101858#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,217 INFO L290 TraceCheckUtils]: 5: Hoare triple {101858#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101859#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,218 INFO L290 TraceCheckUtils]: 6: Hoare triple {101859#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101860#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:30:09,218 INFO L290 TraceCheckUtils]: 7: Hoare triple {101860#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101861#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {101861#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101862#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {101862#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101863#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} is VALID [2022-04-27 22:30:09,220 INFO L290 TraceCheckUtils]: 10: Hoare triple {101863#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101864#(and (<= correct_version_~l~0 (* 8 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:30:09,221 INFO L290 TraceCheckUtils]: 11: Hoare triple {101864#(and (<= correct_version_~l~0 (* 8 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,221 INFO L290 TraceCheckUtils]: 12: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,222 INFO L290 TraceCheckUtils]: 14: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,222 INFO L290 TraceCheckUtils]: 15: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,222 INFO L290 TraceCheckUtils]: 16: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,223 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} {101812#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {101835#(<= main_~m~0 (* main_~a~0 8))} is VALID [2022-04-27 22:30:09,223 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:30:09,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:09,463 INFO L290 TraceCheckUtils]: 0: Hoare triple {101812#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,463 INFO L290 TraceCheckUtils]: 1: Hoare triple {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,464 INFO L290 TraceCheckUtils]: 2: Hoare triple {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,464 INFO L290 TraceCheckUtils]: 3: Hoare triple {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101867#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:30:09,465 INFO L290 TraceCheckUtils]: 4: Hoare triple {101867#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101868#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,465 INFO L290 TraceCheckUtils]: 5: Hoare triple {101868#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101869#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,466 INFO L290 TraceCheckUtils]: 6: Hoare triple {101869#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101870#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:30:09,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {101870#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101871#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:30:09,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {101871#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101872#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {101872#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101873#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:30:09,468 INFO L290 TraceCheckUtils]: 10: Hoare triple {101873#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101874#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:30:09,468 INFO L290 TraceCheckUtils]: 11: Hoare triple {101874#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101875#(and (<= (+ (* |student_version_#in~a| 8) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,469 INFO L290 TraceCheckUtils]: 12: Hoare triple {101875#(and (<= (+ (* |student_version_#in~a| 8) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,469 INFO L290 TraceCheckUtils]: 13: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,469 INFO L290 TraceCheckUtils]: 14: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,470 INFO L290 TraceCheckUtils]: 15: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,470 INFO L290 TraceCheckUtils]: 16: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,470 INFO L290 TraceCheckUtils]: 17: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,471 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} {101835#(<= main_~m~0 (* main_~a~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {101813#false} is VALID [2022-04-27 22:30:09,471 INFO L272 TraceCheckUtils]: 0: Hoare triple {101812#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101855#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:30:09,471 INFO L290 TraceCheckUtils]: 1: Hoare triple {101855#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {101812#true} is VALID [2022-04-27 22:30:09,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {101812#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:09,472 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101812#true} {101812#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:09,472 INFO L272 TraceCheckUtils]: 4: Hoare triple {101812#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:09,472 INFO L290 TraceCheckUtils]: 5: Hoare triple {101812#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:09,472 INFO L290 TraceCheckUtils]: 6: Hoare triple {101812#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:09,472 INFO L272 TraceCheckUtils]: 7: Hoare triple {101812#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:09,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {101812#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:30:09,473 INFO L290 TraceCheckUtils]: 9: Hoare triple {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:30:09,473 INFO L290 TraceCheckUtils]: 10: Hoare triple {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:30:09,474 INFO L290 TraceCheckUtils]: 11: Hoare triple {101856#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101857#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:30:09,474 INFO L290 TraceCheckUtils]: 12: Hoare triple {101857#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101858#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {101858#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101859#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,475 INFO L290 TraceCheckUtils]: 14: Hoare triple {101859#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101860#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:30:09,476 INFO L290 TraceCheckUtils]: 15: Hoare triple {101860#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101861#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,476 INFO L290 TraceCheckUtils]: 16: Hoare triple {101861#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101862#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:09,477 INFO L290 TraceCheckUtils]: 17: Hoare triple {101862#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101863#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} is VALID [2022-04-27 22:30:09,477 INFO L290 TraceCheckUtils]: 18: Hoare triple {101863#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101864#(and (<= correct_version_~l~0 (* 8 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:30:09,478 INFO L290 TraceCheckUtils]: 19: Hoare triple {101864#(and (<= correct_version_~l~0 (* 8 |correct_version_#in~a|)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,478 INFO L290 TraceCheckUtils]: 20: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,478 INFO L290 TraceCheckUtils]: 21: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,479 INFO L290 TraceCheckUtils]: 22: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,479 INFO L290 TraceCheckUtils]: 23: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,479 INFO L290 TraceCheckUtils]: 24: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:09,480 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} {101812#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {101835#(<= main_~m~0 (* main_~a~0 8))} is VALID [2022-04-27 22:30:09,480 INFO L290 TraceCheckUtils]: 26: Hoare triple {101835#(<= main_~m~0 (* main_~a~0 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {101835#(<= main_~m~0 (* main_~a~0 8))} is VALID [2022-04-27 22:30:09,480 INFO L272 TraceCheckUtils]: 27: Hoare triple {101835#(<= main_~m~0 (* main_~a~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:09,481 INFO L290 TraceCheckUtils]: 28: Hoare triple {101812#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,481 INFO L290 TraceCheckUtils]: 29: Hoare triple {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,481 INFO L290 TraceCheckUtils]: 30: Hoare triple {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,482 INFO L290 TraceCheckUtils]: 31: Hoare triple {101866#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101867#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:30:09,482 INFO L290 TraceCheckUtils]: 32: Hoare triple {101867#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101868#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,483 INFO L290 TraceCheckUtils]: 33: Hoare triple {101868#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101869#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,484 INFO L290 TraceCheckUtils]: 34: Hoare triple {101869#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101870#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:30:09,484 INFO L290 TraceCheckUtils]: 35: Hoare triple {101870#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101871#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:30:09,485 INFO L290 TraceCheckUtils]: 36: Hoare triple {101871#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101872#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,485 INFO L290 TraceCheckUtils]: 37: Hoare triple {101872#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101873#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:30:09,486 INFO L290 TraceCheckUtils]: 38: Hoare triple {101873#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101874#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:30:09,486 INFO L290 TraceCheckUtils]: 39: Hoare triple {101874#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101875#(and (<= (+ (* |student_version_#in~a| 8) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:09,486 INFO L290 TraceCheckUtils]: 40: Hoare triple {101875#(and (<= (+ (* |student_version_#in~a| 8) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,487 INFO L290 TraceCheckUtils]: 41: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,487 INFO L290 TraceCheckUtils]: 42: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,487 INFO L290 TraceCheckUtils]: 43: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,487 INFO L290 TraceCheckUtils]: 44: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,487 INFO L290 TraceCheckUtils]: 45: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:09,488 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} {101835#(<= main_~m~0 (* main_~a~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {101813#false} is VALID [2022-04-27 22:30:09,488 INFO L290 TraceCheckUtils]: 47: Hoare triple {101813#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {101813#false} is VALID [2022-04-27 22:30:09,488 INFO L272 TraceCheckUtils]: 48: Hoare triple {101813#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {101813#false} is VALID [2022-04-27 22:30:09,488 INFO L290 TraceCheckUtils]: 49: Hoare triple {101813#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {101813#false} is VALID [2022-04-27 22:30:09,488 INFO L290 TraceCheckUtils]: 50: Hoare triple {101813#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {101813#false} is VALID [2022-04-27 22:30:09,488 INFO L290 TraceCheckUtils]: 51: Hoare triple {101813#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101813#false} is VALID [2022-04-27 22:30:09,489 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:30:09,489 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:30:09,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1543751099] [2022-04-27 22:30:09,489 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1543751099] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:30:09,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [125408966] [2022-04-27 22:30:09,489 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:30:09,489 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:30:09,489 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:30:09,490 INFO L229 MonitoredProcess]: Starting monitored process 58 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:30:09,491 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (58)] Waiting until timeout for monitored process [2022-04-27 22:30:09,606 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-04-27 22:30:09,606 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:30:09,607 INFO L263 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 22:30:09,633 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:09,634 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:30:10,669 INFO L272 TraceCheckUtils]: 0: Hoare triple {101812#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:10,669 INFO L290 TraceCheckUtils]: 1: Hoare triple {101812#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {101812#true} is VALID [2022-04-27 22:30:10,669 INFO L290 TraceCheckUtils]: 2: Hoare triple {101812#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:10,669 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101812#true} {101812#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:10,669 INFO L272 TraceCheckUtils]: 4: Hoare triple {101812#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:10,669 INFO L290 TraceCheckUtils]: 5: Hoare triple {101812#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:10,670 INFO L290 TraceCheckUtils]: 6: Hoare triple {101812#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:10,670 INFO L272 TraceCheckUtils]: 7: Hoare triple {101812#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:10,670 INFO L290 TraceCheckUtils]: 8: Hoare triple {101812#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {101904#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,670 INFO L290 TraceCheckUtils]: 9: Hoare triple {101904#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {101904#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,670 INFO L290 TraceCheckUtils]: 10: Hoare triple {101904#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {101904#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,671 INFO L290 TraceCheckUtils]: 11: Hoare triple {101904#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101914#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,671 INFO L290 TraceCheckUtils]: 12: Hoare triple {101914#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101918#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,672 INFO L290 TraceCheckUtils]: 13: Hoare triple {101918#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101922#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,672 INFO L290 TraceCheckUtils]: 14: Hoare triple {101922#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101926#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,673 INFO L290 TraceCheckUtils]: 15: Hoare triple {101926#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101930#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,674 INFO L290 TraceCheckUtils]: 16: Hoare triple {101930#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101934#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,674 INFO L290 TraceCheckUtils]: 17: Hoare triple {101934#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101938#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 7 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,675 INFO L290 TraceCheckUtils]: 18: Hoare triple {101938#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 7 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {101942#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 8)) |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,676 INFO L290 TraceCheckUtils]: 19: Hoare triple {101942#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 8)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,676 INFO L290 TraceCheckUtils]: 21: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,677 INFO L290 TraceCheckUtils]: 22: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,677 INFO L290 TraceCheckUtils]: 23: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,677 INFO L290 TraceCheckUtils]: 24: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:10,678 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} {101812#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {101835#(<= main_~m~0 (* main_~a~0 8))} is VALID [2022-04-27 22:30:10,678 INFO L290 TraceCheckUtils]: 26: Hoare triple {101835#(<= main_~m~0 (* main_~a~0 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {101835#(<= main_~m~0 (* main_~a~0 8))} is VALID [2022-04-27 22:30:10,678 INFO L272 TraceCheckUtils]: 27: Hoare triple {101835#(<= main_~m~0 (* main_~a~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:10,679 INFO L290 TraceCheckUtils]: 28: Hoare triple {101812#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {101973#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:30:10,679 INFO L290 TraceCheckUtils]: 29: Hoare triple {101973#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {101973#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:30:10,679 INFO L290 TraceCheckUtils]: 30: Hoare triple {101973#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {101973#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:30:10,680 INFO L290 TraceCheckUtils]: 31: Hoare triple {101973#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101983#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:30:10,681 INFO L290 TraceCheckUtils]: 32: Hoare triple {101983#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101987#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:30:10,681 INFO L290 TraceCheckUtils]: 33: Hoare triple {101987#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101991#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:30:10,682 INFO L290 TraceCheckUtils]: 34: Hoare triple {101991#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101995#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:30:10,683 INFO L290 TraceCheckUtils]: 35: Hoare triple {101995#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101999#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:30:10,683 INFO L290 TraceCheckUtils]: 36: Hoare triple {101999#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102003#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:30:10,684 INFO L290 TraceCheckUtils]: 37: Hoare triple {102003#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102007#(and (<= student_version_~m |student_version_#in~m|) (<= (* 7 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:30:10,685 INFO L290 TraceCheckUtils]: 38: Hoare triple {102007#(and (<= student_version_~m |student_version_#in~m|) (<= (* 7 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102011#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 8)))} is VALID [2022-04-27 22:30:10,686 INFO L290 TraceCheckUtils]: 39: Hoare triple {102011#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 8)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:10,686 INFO L290 TraceCheckUtils]: 40: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:10,687 INFO L290 TraceCheckUtils]: 41: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:10,687 INFO L290 TraceCheckUtils]: 42: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:10,687 INFO L290 TraceCheckUtils]: 43: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:10,688 INFO L290 TraceCheckUtils]: 44: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:10,688 INFO L290 TraceCheckUtils]: 45: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:10,688 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} {101835#(<= main_~m~0 (* main_~a~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {101813#false} is VALID [2022-04-27 22:30:10,689 INFO L290 TraceCheckUtils]: 47: Hoare triple {101813#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {101813#false} is VALID [2022-04-27 22:30:10,689 INFO L272 TraceCheckUtils]: 48: Hoare triple {101813#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {101813#false} is VALID [2022-04-27 22:30:10,689 INFO L290 TraceCheckUtils]: 49: Hoare triple {101813#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {101813#false} is VALID [2022-04-27 22:30:10,689 INFO L290 TraceCheckUtils]: 50: Hoare triple {101813#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {101813#false} is VALID [2022-04-27 22:30:10,689 INFO L290 TraceCheckUtils]: 51: Hoare triple {101813#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101813#false} is VALID [2022-04-27 22:30:10,689 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:30:10,689 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:30:12,113 INFO L290 TraceCheckUtils]: 51: Hoare triple {101813#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101813#false} is VALID [2022-04-27 22:30:12,113 INFO L290 TraceCheckUtils]: 50: Hoare triple {101813#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {101813#false} is VALID [2022-04-27 22:30:12,113 INFO L290 TraceCheckUtils]: 49: Hoare triple {101813#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {101813#false} is VALID [2022-04-27 22:30:12,113 INFO L272 TraceCheckUtils]: 48: Hoare triple {101813#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {101813#false} is VALID [2022-04-27 22:30:12,113 INFO L290 TraceCheckUtils]: 47: Hoare triple {101813#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {101813#false} is VALID [2022-04-27 22:30:12,114 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} {101835#(<= main_~m~0 (* main_~a~0 8))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {101813#false} is VALID [2022-04-27 22:30:12,114 INFO L290 TraceCheckUtils]: 45: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:12,114 INFO L290 TraceCheckUtils]: 44: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:12,114 INFO L290 TraceCheckUtils]: 43: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:12,115 INFO L290 TraceCheckUtils]: 42: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:12,115 INFO L290 TraceCheckUtils]: 41: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:12,115 INFO L290 TraceCheckUtils]: 40: Hoare triple {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:12,115 INFO L290 TraceCheckUtils]: 39: Hoare triple {102090#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {101876#(<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:30:12,116 INFO L290 TraceCheckUtils]: 38: Hoare triple {102094#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102090#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:30:12,116 INFO L290 TraceCheckUtils]: 37: Hoare triple {102098#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102094#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:30:12,117 INFO L290 TraceCheckUtils]: 36: Hoare triple {102102#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102098#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:30:12,117 INFO L290 TraceCheckUtils]: 35: Hoare triple {102106#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102102#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:30:12,118 INFO L290 TraceCheckUtils]: 34: Hoare triple {102110#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102106#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))))} is VALID [2022-04-27 22:30:12,118 INFO L290 TraceCheckUtils]: 33: Hoare triple {102114#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102110#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:30:12,119 INFO L290 TraceCheckUtils]: 32: Hoare triple {102118#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102114#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:30:12,119 INFO L290 TraceCheckUtils]: 31: Hoare triple {102122#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {102118#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:30:12,119 INFO L290 TraceCheckUtils]: 30: Hoare triple {102122#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {102122#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:30:12,119 INFO L290 TraceCheckUtils]: 29: Hoare triple {102122#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {102122#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:30:12,120 INFO L290 TraceCheckUtils]: 28: Hoare triple {101812#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {102122#(or (<= (+ (* |student_version_#in~a| 8) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:30:12,120 INFO L272 TraceCheckUtils]: 27: Hoare triple {101835#(<= main_~m~0 (* main_~a~0 8))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:12,120 INFO L290 TraceCheckUtils]: 26: Hoare triple {101835#(<= main_~m~0 (* main_~a~0 8))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {101835#(<= main_~m~0 (* main_~a~0 8))} is VALID [2022-04-27 22:30:12,121 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} {101812#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {101835#(<= main_~m~0 (* main_~a~0 8))} is VALID [2022-04-27 22:30:12,121 INFO L290 TraceCheckUtils]: 24: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:12,121 INFO L290 TraceCheckUtils]: 23: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:12,121 INFO L290 TraceCheckUtils]: 22: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:12,121 INFO L290 TraceCheckUtils]: 21: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:12,122 INFO L290 TraceCheckUtils]: 20: Hoare triple {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:12,122 INFO L290 TraceCheckUtils]: 19: Hoare triple {102159#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {101865#(<= |correct_version_#in~m| (* 8 |correct_version_#in~a|))} is VALID [2022-04-27 22:30:12,122 INFO L290 TraceCheckUtils]: 18: Hoare triple {102163#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102159#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< correct_version_~l~0 correct_version_~m))} is VALID [2022-04-27 22:30:12,123 INFO L290 TraceCheckUtils]: 17: Hoare triple {102167#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102163#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:30:12,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {102171#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102167#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} is VALID [2022-04-27 22:30:12,124 INFO L290 TraceCheckUtils]: 15: Hoare triple {102175#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102171#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} is VALID [2022-04-27 22:30:12,124 INFO L290 TraceCheckUtils]: 14: Hoare triple {102179#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102175#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} is VALID [2022-04-27 22:30:12,125 INFO L290 TraceCheckUtils]: 13: Hoare triple {102183#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102179#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:30:12,125 INFO L290 TraceCheckUtils]: 12: Hoare triple {102187#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102183#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:30:12,125 INFO L290 TraceCheckUtils]: 11: Hoare triple {102191#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {102187#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)))} is VALID [2022-04-27 22:30:12,126 INFO L290 TraceCheckUtils]: 10: Hoare triple {102191#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {102191#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:30:12,126 INFO L290 TraceCheckUtils]: 9: Hoare triple {102191#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {102191#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:30:12,126 INFO L290 TraceCheckUtils]: 8: Hoare triple {101812#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {102191#(or (<= |correct_version_#in~m| (* 8 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:30:12,126 INFO L272 TraceCheckUtils]: 7: Hoare triple {101812#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:12,126 INFO L290 TraceCheckUtils]: 6: Hoare triple {101812#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:12,127 INFO L290 TraceCheckUtils]: 5: Hoare triple {101812#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {101812#true} is VALID [2022-04-27 22:30:12,127 INFO L272 TraceCheckUtils]: 4: Hoare triple {101812#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:12,127 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101812#true} {101812#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:12,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {101812#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:12,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {101812#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {101812#true} is VALID [2022-04-27 22:30:12,127 INFO L272 TraceCheckUtils]: 0: Hoare triple {101812#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101812#true} is VALID [2022-04-27 22:30:12,127 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 9 proven. 72 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:30:12,127 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [125408966] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:30:12,127 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:30:12,127 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 23, 23] total 61 [2022-04-27 22:30:12,127 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1854242893] [2022-04-27 22:30:12,128 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:30:12,135 INFO L78 Accepts]: Start accepts. Automaton has has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 52 [2022-04-27 22:30:12,135 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:30:12,135 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:12,181 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-27 22:30:12,181 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 61 states [2022-04-27 22:30:12,181 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:30:12,181 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 61 interpolants. [2022-04-27 22:30:12,181 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=201, Invalid=3459, Unknown=0, NotChecked=0, Total=3660 [2022-04-27 22:30:12,182 INFO L87 Difference]: Start difference. First operand 552 states and 628 transitions. Second operand has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:23,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:23,819 INFO L93 Difference]: Finished difference Result 642 states and 735 transitions. [2022-04-27 22:30:23,819 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 39 states. [2022-04-27 22:30:23,819 INFO L78 Accepts]: Start accepts. Automaton has has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 52 [2022-04-27 22:30:23,819 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:30:23,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:23,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 178 transitions. [2022-04-27 22:30:23,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:23,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 178 transitions. [2022-04-27 22:30:23,822 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 39 states and 178 transitions. [2022-04-27 22:30:23,951 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:30:23,982 INFO L225 Difference]: With dead ends: 642 [2022-04-27 22:30:23,982 INFO L226 Difference]: Without dead ends: 628 [2022-04-27 22:30:24,006 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 167 GetRequests, 67 SyntacticMatches, 5 SemanticMatches, 95 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1307 ImplicationChecksByTransitivity, 2.4s TimeCoverageRelationStatistics Valid=640, Invalid=8672, Unknown=0, NotChecked=0, Total=9312 [2022-04-27 22:30:24,008 INFO L413 NwaCegarLoop]: 104 mSDtfsCounter, 1004 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 5045 mSolverCounterSat, 121 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1009 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 5166 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 121 IncrementalHoareTripleChecker+Valid, 5045 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:30:24,008 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [1009 Valid, 276 Invalid, 5166 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [121 Valid, 5045 Invalid, 0 Unknown, 0 Unchecked, 3.3s Time] [2022-04-27 22:30:24,009 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 628 states. [2022-04-27 22:30:27,425 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 628 to 619. [2022-04-27 22:30:27,425 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:30:27,426 INFO L82 GeneralOperation]: Start isEquivalent. First operand 628 states. Second operand has 619 states, 532 states have (on average 1.1541353383458646) internal successors, (614), 584 states have internal predecessors, (614), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (61), 29 states have call predecessors, (61), 29 states have call successors, (61) [2022-04-27 22:30:27,426 INFO L74 IsIncluded]: Start isIncluded. First operand 628 states. Second operand has 619 states, 532 states have (on average 1.1541353383458646) internal successors, (614), 584 states have internal predecessors, (614), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (61), 29 states have call predecessors, (61), 29 states have call successors, (61) [2022-04-27 22:30:27,426 INFO L87 Difference]: Start difference. First operand 628 states. Second operand has 619 states, 532 states have (on average 1.1541353383458646) internal successors, (614), 584 states have internal predecessors, (614), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (61), 29 states have call predecessors, (61), 29 states have call successors, (61) [2022-04-27 22:30:27,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:27,444 INFO L93 Difference]: Finished difference Result 628 states and 716 transitions. [2022-04-27 22:30:27,444 INFO L276 IsEmpty]: Start isEmpty. Operand 628 states and 716 transitions. [2022-04-27 22:30:27,448 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:27,449 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:27,449 INFO L74 IsIncluded]: Start isIncluded. First operand has 619 states, 532 states have (on average 1.1541353383458646) internal successors, (614), 584 states have internal predecessors, (614), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (61), 29 states have call predecessors, (61), 29 states have call successors, (61) Second operand 628 states. [2022-04-27 22:30:27,450 INFO L87 Difference]: Start difference. First operand has 619 states, 532 states have (on average 1.1541353383458646) internal successors, (614), 584 states have internal predecessors, (614), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (61), 29 states have call predecessors, (61), 29 states have call successors, (61) Second operand 628 states. [2022-04-27 22:30:27,468 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:27,468 INFO L93 Difference]: Finished difference Result 628 states and 716 transitions. [2022-04-27 22:30:27,468 INFO L276 IsEmpty]: Start isEmpty. Operand 628 states and 716 transitions. [2022-04-27 22:30:27,471 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:27,471 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:27,471 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:30:27,471 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:30:27,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 619 states, 532 states have (on average 1.1541353383458646) internal successors, (614), 584 states have internal predecessors, (614), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (61), 29 states have call predecessors, (61), 29 states have call successors, (61) [2022-04-27 22:30:27,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 619 states to 619 states and 706 transitions. [2022-04-27 22:30:27,503 INFO L78 Accepts]: Start accepts. Automaton has 619 states and 706 transitions. Word has length 52 [2022-04-27 22:30:27,503 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:30:27,503 INFO L495 AbstractCegarLoop]: Abstraction has 619 states and 706 transitions. [2022-04-27 22:30:27,503 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:27,503 INFO L276 IsEmpty]: Start isEmpty. Operand 619 states and 706 transitions. [2022-04-27 22:30:27,506 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-27 22:30:27,506 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:30:27,506 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 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-27 22:30:27,525 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (58)] Forceful destruction successful, exit code 0 [2022-04-27 22:30:27,723 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 58 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable66 [2022-04-27 22:30:27,723 INFO L420 AbstractCegarLoop]: === Iteration 68 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:30:27,724 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:30:27,724 INFO L85 PathProgramCache]: Analyzing trace with hash 115758077, now seen corresponding path program 58 times [2022-04-27 22:30:27,724 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:30:27,724 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1497029688] [2022-04-27 22:30:27,724 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:30:27,724 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:30:27,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:27,758 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:30:27,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:27,760 INFO L290 TraceCheckUtils]: 0: Hoare triple {105412#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {105369#true} is VALID [2022-04-27 22:30:27,760 INFO L290 TraceCheckUtils]: 1: Hoare triple {105369#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:27,760 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {105369#true} {105369#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:27,760 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:30:27,766 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:27,915 INFO L290 TraceCheckUtils]: 0: Hoare triple {105369#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,916 INFO L290 TraceCheckUtils]: 1: Hoare triple {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,916 INFO L290 TraceCheckUtils]: 2: Hoare triple {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,917 INFO L290 TraceCheckUtils]: 3: Hoare triple {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105414#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,917 INFO L290 TraceCheckUtils]: 4: Hoare triple {105414#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105415#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {105415#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105416#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,919 INFO L290 TraceCheckUtils]: 6: Hoare triple {105416#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105417#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {105417#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105418#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:30:27,920 INFO L290 TraceCheckUtils]: 8: Hoare triple {105418#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105419#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {105419#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105420#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:27,921 INFO L290 TraceCheckUtils]: 10: Hoare triple {105420#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105421#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:30:27,921 INFO L290 TraceCheckUtils]: 11: Hoare triple {105421#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105422#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 8 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:30:27,922 INFO L290 TraceCheckUtils]: 12: Hoare triple {105422#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 8 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:27,922 INFO L290 TraceCheckUtils]: 13: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:27,923 INFO L290 TraceCheckUtils]: 14: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:27,923 INFO L290 TraceCheckUtils]: 15: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:27,923 INFO L290 TraceCheckUtils]: 16: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:27,924 INFO L290 TraceCheckUtils]: 17: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:27,925 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {105369#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} is VALID [2022-04-27 22:30:27,925 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:30:27,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:28,089 INFO L290 TraceCheckUtils]: 0: Hoare triple {105369#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:30:28,090 INFO L290 TraceCheckUtils]: 1: Hoare triple {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:30:28,090 INFO L290 TraceCheckUtils]: 2: Hoare triple {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:30:28,091 INFO L290 TraceCheckUtils]: 3: Hoare triple {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105425#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:30:28,091 INFO L290 TraceCheckUtils]: 4: Hoare triple {105425#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105426#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:30:28,092 INFO L290 TraceCheckUtils]: 5: Hoare triple {105426#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105427#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:30:28,092 INFO L290 TraceCheckUtils]: 6: Hoare triple {105427#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105428#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:30:28,092 INFO L290 TraceCheckUtils]: 7: Hoare triple {105428#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105429#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:30:28,093 INFO L290 TraceCheckUtils]: 8: Hoare triple {105429#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105430#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:30:28,093 INFO L290 TraceCheckUtils]: 9: Hoare triple {105430#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105431#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:30:28,094 INFO L290 TraceCheckUtils]: 10: Hoare triple {105431#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105432#(and (<= student_version_~l~1 (* |student_version_#in~a| 8)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:28,094 INFO L290 TraceCheckUtils]: 11: Hoare triple {105432#(and (<= student_version_~l~1 (* |student_version_#in~a| 8)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,094 INFO L290 TraceCheckUtils]: 12: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,094 INFO L290 TraceCheckUtils]: 13: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,094 INFO L290 TraceCheckUtils]: 14: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,095 INFO L290 TraceCheckUtils]: 15: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,095 INFO L290 TraceCheckUtils]: 16: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,095 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {105370#false} is VALID [2022-04-27 22:30:28,096 INFO L272 TraceCheckUtils]: 0: Hoare triple {105369#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105412#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:30:28,096 INFO L290 TraceCheckUtils]: 1: Hoare triple {105412#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {105369#true} is VALID [2022-04-27 22:30:28,096 INFO L290 TraceCheckUtils]: 2: Hoare triple {105369#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:28,096 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {105369#true} {105369#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:28,096 INFO L272 TraceCheckUtils]: 4: Hoare triple {105369#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:28,096 INFO L290 TraceCheckUtils]: 5: Hoare triple {105369#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:28,096 INFO L290 TraceCheckUtils]: 6: Hoare triple {105369#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:28,096 INFO L272 TraceCheckUtils]: 7: Hoare triple {105369#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:28,096 INFO L290 TraceCheckUtils]: 8: Hoare triple {105369#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,097 INFO L290 TraceCheckUtils]: 9: Hoare triple {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,097 INFO L290 TraceCheckUtils]: 10: Hoare triple {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,097 INFO L290 TraceCheckUtils]: 11: Hoare triple {105413#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105414#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,098 INFO L290 TraceCheckUtils]: 12: Hoare triple {105414#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105415#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,098 INFO L290 TraceCheckUtils]: 13: Hoare triple {105415#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105416#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,099 INFO L290 TraceCheckUtils]: 14: Hoare triple {105416#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105417#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,099 INFO L290 TraceCheckUtils]: 15: Hoare triple {105417#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105418#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:30:28,099 INFO L290 TraceCheckUtils]: 16: Hoare triple {105418#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105419#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,100 INFO L290 TraceCheckUtils]: 17: Hoare triple {105419#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105420#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:28,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {105420#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105421#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:30:28,101 INFO L290 TraceCheckUtils]: 19: Hoare triple {105421#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105422#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 8 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:30:28,101 INFO L290 TraceCheckUtils]: 20: Hoare triple {105422#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 8 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:28,101 INFO L290 TraceCheckUtils]: 21: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:28,102 INFO L290 TraceCheckUtils]: 22: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:28,102 INFO L290 TraceCheckUtils]: 23: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:28,102 INFO L290 TraceCheckUtils]: 24: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:28,102 INFO L290 TraceCheckUtils]: 25: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:28,103 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {105369#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} is VALID [2022-04-27 22:30:28,103 INFO L290 TraceCheckUtils]: 27: Hoare triple {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} is VALID [2022-04-27 22:30:28,103 INFO L272 TraceCheckUtils]: 28: Hoare triple {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:28,104 INFO L290 TraceCheckUtils]: 29: Hoare triple {105369#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:30:28,104 INFO L290 TraceCheckUtils]: 30: Hoare triple {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:30:28,104 INFO L290 TraceCheckUtils]: 31: Hoare triple {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:30:28,105 INFO L290 TraceCheckUtils]: 32: Hoare triple {105424#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105425#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:30:28,105 INFO L290 TraceCheckUtils]: 33: Hoare triple {105425#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105426#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:30:28,106 INFO L290 TraceCheckUtils]: 34: Hoare triple {105426#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105427#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:30:28,106 INFO L290 TraceCheckUtils]: 35: Hoare triple {105427#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105428#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:30:28,107 INFO L290 TraceCheckUtils]: 36: Hoare triple {105428#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105429#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:30:28,107 INFO L290 TraceCheckUtils]: 37: Hoare triple {105429#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105430#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:30:28,108 INFO L290 TraceCheckUtils]: 38: Hoare triple {105430#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105431#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:30:28,108 INFO L290 TraceCheckUtils]: 39: Hoare triple {105431#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105432#(and (<= student_version_~l~1 (* |student_version_#in~a| 8)) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:30:28,108 INFO L290 TraceCheckUtils]: 40: Hoare triple {105432#(and (<= student_version_~l~1 (* |student_version_#in~a| 8)) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,109 INFO L290 TraceCheckUtils]: 41: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,109 INFO L290 TraceCheckUtils]: 42: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,109 INFO L290 TraceCheckUtils]: 43: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,109 INFO L290 TraceCheckUtils]: 44: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,109 INFO L290 TraceCheckUtils]: 45: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:28,110 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {105370#false} is VALID [2022-04-27 22:30:28,110 INFO L290 TraceCheckUtils]: 47: Hoare triple {105370#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {105370#false} is VALID [2022-04-27 22:30:28,110 INFO L272 TraceCheckUtils]: 48: Hoare triple {105370#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {105370#false} is VALID [2022-04-27 22:30:28,110 INFO L290 TraceCheckUtils]: 49: Hoare triple {105370#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {105370#false} is VALID [2022-04-27 22:30:28,110 INFO L290 TraceCheckUtils]: 50: Hoare triple {105370#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {105370#false} is VALID [2022-04-27 22:30:28,110 INFO L290 TraceCheckUtils]: 51: Hoare triple {105370#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105370#false} is VALID [2022-04-27 22:30:28,111 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:30:28,111 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:30:28,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1497029688] [2022-04-27 22:30:28,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1497029688] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:30:28,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [205888866] [2022-04-27 22:30:28,111 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:30:28,111 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:30:28,111 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:30:28,112 INFO L229 MonitoredProcess]: Starting monitored process 59 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:30:28,113 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (59)] Waiting until timeout for monitored process [2022-04-27 22:30:28,193 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:30:28,193 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:30:28,194 INFO L263 TraceCheckSpWp]: Trace formula consists of 198 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 22:30:28,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:28,208 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:30:29,475 INFO L272 TraceCheckUtils]: 0: Hoare triple {105369#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:29,475 INFO L290 TraceCheckUtils]: 1: Hoare triple {105369#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {105369#true} is VALID [2022-04-27 22:30:29,476 INFO L290 TraceCheckUtils]: 2: Hoare triple {105369#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:29,476 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {105369#true} {105369#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:29,476 INFO L272 TraceCheckUtils]: 4: Hoare triple {105369#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:29,476 INFO L290 TraceCheckUtils]: 5: Hoare triple {105369#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:29,476 INFO L290 TraceCheckUtils]: 6: Hoare triple {105369#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:29,476 INFO L272 TraceCheckUtils]: 7: Hoare triple {105369#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:29,476 INFO L290 TraceCheckUtils]: 8: Hoare triple {105369#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {105461#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,477 INFO L290 TraceCheckUtils]: 9: Hoare triple {105461#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {105461#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,477 INFO L290 TraceCheckUtils]: 10: Hoare triple {105461#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {105461#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,477 INFO L290 TraceCheckUtils]: 11: Hoare triple {105461#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105471#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,478 INFO L290 TraceCheckUtils]: 12: Hoare triple {105471#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105475#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {105475#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105479#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,478 INFO L290 TraceCheckUtils]: 14: Hoare triple {105479#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105483#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,479 INFO L290 TraceCheckUtils]: 15: Hoare triple {105483#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105487#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:30:29,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {105487#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105491#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,480 INFO L290 TraceCheckUtils]: 17: Hoare triple {105491#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105495#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 7 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:30:29,480 INFO L290 TraceCheckUtils]: 18: Hoare triple {105495#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 7 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105499#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 8)))} is VALID [2022-04-27 22:30:29,481 INFO L290 TraceCheckUtils]: 19: Hoare triple {105499#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 8)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:29,481 INFO L290 TraceCheckUtils]: 20: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:29,481 INFO L290 TraceCheckUtils]: 21: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:29,481 INFO L290 TraceCheckUtils]: 22: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:29,482 INFO L290 TraceCheckUtils]: 23: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:29,482 INFO L290 TraceCheckUtils]: 24: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:29,482 INFO L290 TraceCheckUtils]: 25: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:29,482 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {105369#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} is VALID [2022-04-27 22:30:29,483 INFO L290 TraceCheckUtils]: 27: Hoare triple {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} is VALID [2022-04-27 22:30:29,483 INFO L272 TraceCheckUtils]: 28: Hoare triple {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:29,483 INFO L290 TraceCheckUtils]: 29: Hoare triple {105369#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {105533#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:30:29,483 INFO L290 TraceCheckUtils]: 30: Hoare triple {105533#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {105533#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:30:29,484 INFO L290 TraceCheckUtils]: 31: Hoare triple {105533#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {105533#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:30:29,484 INFO L290 TraceCheckUtils]: 32: Hoare triple {105533#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105543#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:30:29,484 INFO L290 TraceCheckUtils]: 33: Hoare triple {105543#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105547#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:30:29,485 INFO L290 TraceCheckUtils]: 34: Hoare triple {105547#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105551#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:30:29,485 INFO L290 TraceCheckUtils]: 35: Hoare triple {105551#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105555#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:30:29,486 INFO L290 TraceCheckUtils]: 36: Hoare triple {105555#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105559#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:30:29,486 INFO L290 TraceCheckUtils]: 37: Hoare triple {105559#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105563#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:30:29,487 INFO L290 TraceCheckUtils]: 38: Hoare triple {105563#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105567#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:30:29,487 INFO L290 TraceCheckUtils]: 39: Hoare triple {105567#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105571#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 8)) |student_version_#in~a|))} is VALID [2022-04-27 22:30:29,487 INFO L290 TraceCheckUtils]: 40: Hoare triple {105571#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 8)) |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:29,488 INFO L290 TraceCheckUtils]: 41: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:29,488 INFO L290 TraceCheckUtils]: 42: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:29,488 INFO L290 TraceCheckUtils]: 43: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:29,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:29,489 INFO L290 TraceCheckUtils]: 45: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:29,489 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {105370#false} is VALID [2022-04-27 22:30:29,489 INFO L290 TraceCheckUtils]: 47: Hoare triple {105370#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {105370#false} is VALID [2022-04-27 22:30:29,489 INFO L272 TraceCheckUtils]: 48: Hoare triple {105370#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {105370#false} is VALID [2022-04-27 22:30:29,489 INFO L290 TraceCheckUtils]: 49: Hoare triple {105370#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {105370#false} is VALID [2022-04-27 22:30:29,489 INFO L290 TraceCheckUtils]: 50: Hoare triple {105370#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {105370#false} is VALID [2022-04-27 22:30:29,489 INFO L290 TraceCheckUtils]: 51: Hoare triple {105370#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105370#false} is VALID [2022-04-27 22:30:29,490 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:30:29,490 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:30:30,896 INFO L290 TraceCheckUtils]: 51: Hoare triple {105370#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105370#false} is VALID [2022-04-27 22:30:30,896 INFO L290 TraceCheckUtils]: 50: Hoare triple {105370#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {105370#false} is VALID [2022-04-27 22:30:30,896 INFO L290 TraceCheckUtils]: 49: Hoare triple {105370#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {105370#false} is VALID [2022-04-27 22:30:30,896 INFO L272 TraceCheckUtils]: 48: Hoare triple {105370#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {105370#false} is VALID [2022-04-27 22:30:30,896 INFO L290 TraceCheckUtils]: 47: Hoare triple {105370#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {105370#false} is VALID [2022-04-27 22:30:30,897 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {105370#false} is VALID [2022-04-27 22:30:30,897 INFO L290 TraceCheckUtils]: 45: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:30,897 INFO L290 TraceCheckUtils]: 44: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:30,897 INFO L290 TraceCheckUtils]: 43: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:30,898 INFO L290 TraceCheckUtils]: 42: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:30,898 INFO L290 TraceCheckUtils]: 41: Hoare triple {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:30,898 INFO L290 TraceCheckUtils]: 40: Hoare triple {105644#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {105433#(<= |student_version_#in~m| (* |student_version_#in~a| 8))} is VALID [2022-04-27 22:30:30,899 INFO L290 TraceCheckUtils]: 39: Hoare triple {105648#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105644#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:30:30,899 INFO L290 TraceCheckUtils]: 38: Hoare triple {105652#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105648#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:30:30,899 INFO L290 TraceCheckUtils]: 37: Hoare triple {105656#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105652#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:30:30,900 INFO L290 TraceCheckUtils]: 36: Hoare triple {105660#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105656#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:30:30,900 INFO L290 TraceCheckUtils]: 35: Hoare triple {105664#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105660#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:30:30,901 INFO L290 TraceCheckUtils]: 34: Hoare triple {105668#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105664#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:30:30,901 INFO L290 TraceCheckUtils]: 33: Hoare triple {105672#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105668#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:30:30,902 INFO L290 TraceCheckUtils]: 32: Hoare triple {105676#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 8)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {105672#(or (<= |student_version_#in~m| (* |student_version_#in~a| 8)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:30:30,902 INFO L290 TraceCheckUtils]: 31: Hoare triple {105676#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 8)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {105676#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 8)))} is VALID [2022-04-27 22:30:30,902 INFO L290 TraceCheckUtils]: 30: Hoare triple {105676#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 8)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {105676#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 8)))} is VALID [2022-04-27 22:30:30,902 INFO L290 TraceCheckUtils]: 29: Hoare triple {105369#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {105676#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 8)))} is VALID [2022-04-27 22:30:30,902 INFO L272 TraceCheckUtils]: 28: Hoare triple {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:30,903 INFO L290 TraceCheckUtils]: 27: Hoare triple {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} is VALID [2022-04-27 22:30:30,903 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {105369#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {105393#(<= (+ (* main_~a~0 8) 1) main_~m~0)} is VALID [2022-04-27 22:30:30,903 INFO L290 TraceCheckUtils]: 25: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:30,904 INFO L290 TraceCheckUtils]: 24: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:30,904 INFO L290 TraceCheckUtils]: 23: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:30,904 INFO L290 TraceCheckUtils]: 22: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:30,904 INFO L290 TraceCheckUtils]: 21: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:30,905 INFO L290 TraceCheckUtils]: 20: Hoare triple {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:30,905 INFO L290 TraceCheckUtils]: 19: Hoare triple {105716#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105423#(<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:30:30,905 INFO L290 TraceCheckUtils]: 18: Hoare triple {105720#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105716#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:30:30,906 INFO L290 TraceCheckUtils]: 17: Hoare triple {105724#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105720#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:30:30,906 INFO L290 TraceCheckUtils]: 16: Hoare triple {105728#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105724#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:30:30,907 INFO L290 TraceCheckUtils]: 15: Hoare triple {105732#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105728#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} is VALID [2022-04-27 22:30:30,907 INFO L290 TraceCheckUtils]: 14: Hoare triple {105736#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105732#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))))} is VALID [2022-04-27 22:30:30,907 INFO L290 TraceCheckUtils]: 13: Hoare triple {105740#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105736#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} is VALID [2022-04-27 22:30:30,908 INFO L290 TraceCheckUtils]: 12: Hoare triple {105744#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105740#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))))} is VALID [2022-04-27 22:30:30,908 INFO L290 TraceCheckUtils]: 11: Hoare triple {105748#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {105744#(or (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|) (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)))} is VALID [2022-04-27 22:30:30,909 INFO L290 TraceCheckUtils]: 10: Hoare triple {105748#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {105748#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:30:30,909 INFO L290 TraceCheckUtils]: 9: Hoare triple {105748#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {105748#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:30:30,909 INFO L290 TraceCheckUtils]: 8: Hoare triple {105369#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {105748#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 8 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:30:30,909 INFO L272 TraceCheckUtils]: 7: Hoare triple {105369#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:30,909 INFO L290 TraceCheckUtils]: 6: Hoare triple {105369#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:30,910 INFO L290 TraceCheckUtils]: 5: Hoare triple {105369#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {105369#true} is VALID [2022-04-27 22:30:30,910 INFO L272 TraceCheckUtils]: 4: Hoare triple {105369#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:30,910 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {105369#true} {105369#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:30,910 INFO L290 TraceCheckUtils]: 2: Hoare triple {105369#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:30,910 INFO L290 TraceCheckUtils]: 1: Hoare triple {105369#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {105369#true} is VALID [2022-04-27 22:30:30,910 INFO L272 TraceCheckUtils]: 0: Hoare triple {105369#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {105369#true} is VALID [2022-04-27 22:30:30,910 INFO L134 CoverageAnalysis]: Checked inductivity of 85 backedges. 9 proven. 72 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:30:30,910 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [205888866] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:30:30,910 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:30:30,910 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 23, 23] total 61 [2022-04-27 22:30:30,910 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [640446389] [2022-04-27 22:30:30,911 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:30:30,911 INFO L78 Accepts]: Start accepts. Automaton has has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 52 [2022-04-27 22:30:30,911 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:30:30,911 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:30,956 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-27 22:30:30,956 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 61 states [2022-04-27 22:30:30,956 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:30:30,956 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 61 interpolants. [2022-04-27 22:30:30,956 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=201, Invalid=3459, Unknown=0, NotChecked=0, Total=3660 [2022-04-27 22:30:30,957 INFO L87 Difference]: Start difference. First operand 619 states and 706 transitions. Second operand has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:42,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:42,435 INFO L93 Difference]: Finished difference Result 634 states and 721 transitions. [2022-04-27 22:30:42,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 39 states. [2022-04-27 22:30:42,435 INFO L78 Accepts]: Start accepts. Automaton has has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 52 [2022-04-27 22:30:42,435 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:30:42,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:42,437 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 177 transitions. [2022-04-27 22:30:42,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:42,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 177 transitions. [2022-04-27 22:30:42,438 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 39 states and 177 transitions. [2022-04-27 22:30:42,555 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:30:42,575 INFO L225 Difference]: With dead ends: 634 [2022-04-27 22:30:42,576 INFO L226 Difference]: Without dead ends: 622 [2022-04-27 22:30:42,578 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 167 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 95 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1319 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=640, Invalid=8672, Unknown=0, NotChecked=0, Total=9312 [2022-04-27 22:30:42,579 INFO L413 NwaCegarLoop]: 106 mSDtfsCounter, 1009 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 5259 mSolverCounterSat, 106 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1026 SdHoareTripleChecker+Valid, 288 SdHoareTripleChecker+Invalid, 5365 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 106 IncrementalHoareTripleChecker+Valid, 5259 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:30:42,579 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [1026 Valid, 288 Invalid, 5365 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [106 Valid, 5259 Invalid, 0 Unknown, 0 Unchecked, 3.3s Time] [2022-04-27 22:30:42,579 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 622 states. [2022-04-27 22:30:45,876 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 622 to 620. [2022-04-27 22:30:45,877 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:30:45,877 INFO L82 GeneralOperation]: Start isEquivalent. First operand 622 states. Second operand has 620 states, 533 states have (on average 1.1538461538461537) internal successors, (615), 585 states have internal predecessors, (615), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:30:45,878 INFO L74 IsIncluded]: Start isIncluded. First operand 622 states. Second operand has 620 states, 533 states have (on average 1.1538461538461537) internal successors, (615), 585 states have internal predecessors, (615), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:30:45,878 INFO L87 Difference]: Start difference. First operand 622 states. Second operand has 620 states, 533 states have (on average 1.1538461538461537) internal successors, (615), 585 states have internal predecessors, (615), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:30:45,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:45,893 INFO L93 Difference]: Finished difference Result 622 states and 705 transitions. [2022-04-27 22:30:45,893 INFO L276 IsEmpty]: Start isEmpty. Operand 622 states and 705 transitions. [2022-04-27 22:30:45,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:45,896 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:45,896 INFO L74 IsIncluded]: Start isIncluded. First operand has 620 states, 533 states have (on average 1.1538461538461537) internal successors, (615), 585 states have internal predecessors, (615), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) Second operand 622 states. [2022-04-27 22:30:45,896 INFO L87 Difference]: Start difference. First operand has 620 states, 533 states have (on average 1.1538461538461537) internal successors, (615), 585 states have internal predecessors, (615), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) Second operand 622 states. [2022-04-27 22:30:45,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:45,911 INFO L93 Difference]: Finished difference Result 622 states and 705 transitions. [2022-04-27 22:30:45,911 INFO L276 IsEmpty]: Start isEmpty. Operand 622 states and 705 transitions. [2022-04-27 22:30:45,914 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:45,914 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:45,914 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:30:45,914 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:30:45,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 620 states, 533 states have (on average 1.1538461538461537) internal successors, (615), 585 states have internal predecessors, (615), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:30:45,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 620 states to 620 states and 703 transitions. [2022-04-27 22:30:45,933 INFO L78 Accepts]: Start accepts. Automaton has 620 states and 703 transitions. Word has length 52 [2022-04-27 22:30:45,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:30:45,933 INFO L495 AbstractCegarLoop]: Abstraction has 620 states and 703 transitions. [2022-04-27 22:30:45,933 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 61 states, 61 states have (on average 1.540983606557377) internal successors, (94), 60 states have internal predecessors, (94), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:30:45,934 INFO L276 IsEmpty]: Start isEmpty. Operand 620 states and 703 transitions. [2022-04-27 22:30:45,937 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-27 22:30:45,937 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:30:45,937 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:30:45,954 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (59)] Forceful destruction successful, exit code 0 [2022-04-27 22:30:46,151 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 59 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable67 [2022-04-27 22:30:46,151 INFO L420 AbstractCegarLoop]: === Iteration 69 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:30:46,152 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:30:46,152 INFO L85 PathProgramCache]: Analyzing trace with hash -502641418, now seen corresponding path program 59 times [2022-04-27 22:30:46,152 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:30:46,152 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [894185414] [2022-04-27 22:30:46,152 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:30:46,152 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:30:46,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:46,172 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:30:46,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:46,174 INFO L290 TraceCheckUtils]: 0: Hoare triple {108946#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {108904#true} is VALID [2022-04-27 22:30:46,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {108904#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,175 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {108904#true} {108904#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,175 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:30:46,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:46,225 INFO L290 TraceCheckUtils]: 0: Hoare triple {108904#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {108947#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,225 INFO L290 TraceCheckUtils]: 1: Hoare triple {108947#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108948#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,226 INFO L290 TraceCheckUtils]: 2: Hoare triple {108948#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108949#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,226 INFO L290 TraceCheckUtils]: 3: Hoare triple {108949#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108950#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,226 INFO L290 TraceCheckUtils]: 4: Hoare triple {108950#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108951#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,227 INFO L290 TraceCheckUtils]: 5: Hoare triple {108951#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,227 INFO L290 TraceCheckUtils]: 6: Hoare triple {108952#(<= 5 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,227 INFO L290 TraceCheckUtils]: 7: Hoare triple {108952#(<= 5 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,227 INFO L290 TraceCheckUtils]: 8: Hoare triple {108952#(<= 5 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,227 INFO L290 TraceCheckUtils]: 9: Hoare triple {108952#(<= 5 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108953#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,228 INFO L290 TraceCheckUtils]: 10: Hoare triple {108953#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108954#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,228 INFO L290 TraceCheckUtils]: 11: Hoare triple {108954#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108955#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,228 INFO L290 TraceCheckUtils]: 12: Hoare triple {108955#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108956#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,229 INFO L290 TraceCheckUtils]: 13: Hoare triple {108956#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108957#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,229 INFO L290 TraceCheckUtils]: 14: Hoare triple {108957#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,229 INFO L290 TraceCheckUtils]: 15: Hoare triple {108905#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {108905#false} is VALID [2022-04-27 22:30:46,229 INFO L290 TraceCheckUtils]: 16: Hoare triple {108905#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,229 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {108905#false} {108904#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,229 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 27 [2022-04-27 22:30:46,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:46,235 INFO L290 TraceCheckUtils]: 0: Hoare triple {108904#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {108904#true} is VALID [2022-04-27 22:30:46,235 INFO L290 TraceCheckUtils]: 1: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,235 INFO L290 TraceCheckUtils]: 2: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,235 INFO L290 TraceCheckUtils]: 3: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 4: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 5: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 6: Hoare triple {108904#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 7: Hoare triple {108904#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 8: Hoare triple {108904#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 9: Hoare triple {108904#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 10: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 11: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 12: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 13: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 14: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 15: Hoare triple {108904#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 16: Hoare triple {108904#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L290 TraceCheckUtils]: 17: Hoare triple {108904#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,236 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {108904#true} {108905#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,237 INFO L272 TraceCheckUtils]: 0: Hoare triple {108904#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108946#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:30:46,237 INFO L290 TraceCheckUtils]: 1: Hoare triple {108946#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {108904#true} is VALID [2022-04-27 22:30:46,237 INFO L290 TraceCheckUtils]: 2: Hoare triple {108904#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,237 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {108904#true} {108904#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,237 INFO L272 TraceCheckUtils]: 4: Hoare triple {108904#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,237 INFO L290 TraceCheckUtils]: 5: Hoare triple {108904#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,237 INFO L290 TraceCheckUtils]: 6: Hoare triple {108904#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,237 INFO L272 TraceCheckUtils]: 7: Hoare triple {108904#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,238 INFO L290 TraceCheckUtils]: 8: Hoare triple {108904#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {108947#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,238 INFO L290 TraceCheckUtils]: 9: Hoare triple {108947#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108948#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,238 INFO L290 TraceCheckUtils]: 10: Hoare triple {108948#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108949#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,239 INFO L290 TraceCheckUtils]: 11: Hoare triple {108949#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108950#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,239 INFO L290 TraceCheckUtils]: 12: Hoare triple {108950#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108951#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,239 INFO L290 TraceCheckUtils]: 13: Hoare triple {108951#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,239 INFO L290 TraceCheckUtils]: 14: Hoare triple {108952#(<= 5 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,240 INFO L290 TraceCheckUtils]: 15: Hoare triple {108952#(<= 5 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,240 INFO L290 TraceCheckUtils]: 16: Hoare triple {108952#(<= 5 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,240 INFO L290 TraceCheckUtils]: 17: Hoare triple {108952#(<= 5 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108953#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,240 INFO L290 TraceCheckUtils]: 18: Hoare triple {108953#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108954#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,241 INFO L290 TraceCheckUtils]: 19: Hoare triple {108954#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108955#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,241 INFO L290 TraceCheckUtils]: 20: Hoare triple {108955#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108956#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,241 INFO L290 TraceCheckUtils]: 21: Hoare triple {108956#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108957#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 22: Hoare triple {108957#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 23: Hoare triple {108905#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {108905#false} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 24: Hoare triple {108905#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,242 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {108905#false} {108904#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 26: Hoare triple {108905#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {108905#false} is VALID [2022-04-27 22:30:46,242 INFO L272 TraceCheckUtils]: 27: Hoare triple {108905#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 28: Hoare triple {108904#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {108904#true} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 29: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 30: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 31: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 32: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 33: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,242 INFO L290 TraceCheckUtils]: 34: Hoare triple {108904#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 35: Hoare triple {108904#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 36: Hoare triple {108904#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 37: Hoare triple {108904#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 38: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 39: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 40: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 41: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 42: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 43: Hoare triple {108904#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 44: Hoare triple {108904#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 45: Hoare triple {108904#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,243 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {108904#true} {108905#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 47: Hoare triple {108905#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {108905#false} is VALID [2022-04-27 22:30:46,243 INFO L272 TraceCheckUtils]: 48: Hoare triple {108905#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {108905#false} is VALID [2022-04-27 22:30:46,243 INFO L290 TraceCheckUtils]: 49: Hoare triple {108905#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {108905#false} is VALID [2022-04-27 22:30:46,244 INFO L290 TraceCheckUtils]: 50: Hoare triple {108905#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,244 INFO L290 TraceCheckUtils]: 51: Hoare triple {108905#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,244 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:30:46,244 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:30:46,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [894185414] [2022-04-27 22:30:46,244 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [894185414] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:30:46,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1890336175] [2022-04-27 22:30:46,244 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:30:46,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:30:46,244 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:30:46,247 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:30:46,247 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (60)] Waiting until timeout for monitored process [2022-04-27 22:30:46,356 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2022-04-27 22:30:46,356 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:30:46,357 INFO L263 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-27 22:30:46,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:46,364 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:30:46,502 INFO L272 TraceCheckUtils]: 0: Hoare triple {108904#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {108904#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {108904#true} is VALID [2022-04-27 22:30:46,502 INFO L290 TraceCheckUtils]: 2: Hoare triple {108904#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,502 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {108904#true} {108904#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,502 INFO L272 TraceCheckUtils]: 4: Hoare triple {108904#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,502 INFO L290 TraceCheckUtils]: 5: Hoare triple {108904#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,502 INFO L290 TraceCheckUtils]: 6: Hoare triple {108904#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,502 INFO L272 TraceCheckUtils]: 7: Hoare triple {108904#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,503 INFO L290 TraceCheckUtils]: 8: Hoare triple {108904#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {108947#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,503 INFO L290 TraceCheckUtils]: 9: Hoare triple {108947#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108948#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,504 INFO L290 TraceCheckUtils]: 10: Hoare triple {108948#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108949#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,504 INFO L290 TraceCheckUtils]: 11: Hoare triple {108949#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108950#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,504 INFO L290 TraceCheckUtils]: 12: Hoare triple {108950#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108951#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,505 INFO L290 TraceCheckUtils]: 13: Hoare triple {108951#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,505 INFO L290 TraceCheckUtils]: 14: Hoare triple {108952#(<= 5 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,505 INFO L290 TraceCheckUtils]: 15: Hoare triple {108952#(<= 5 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,505 INFO L290 TraceCheckUtils]: 16: Hoare triple {108952#(<= 5 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,505 INFO L290 TraceCheckUtils]: 17: Hoare triple {108952#(<= 5 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {109012#(and (<= 5 correct_version_~i~0) (<= correct_version_~x~0 0))} is VALID [2022-04-27 22:30:46,506 INFO L290 TraceCheckUtils]: 18: Hoare triple {109012#(and (<= 5 correct_version_~i~0) (<= correct_version_~x~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {109016#(and (<= 5 correct_version_~i~0) (<= correct_version_~x~0 1))} is VALID [2022-04-27 22:30:46,506 INFO L290 TraceCheckUtils]: 19: Hoare triple {109016#(and (<= 5 correct_version_~i~0) (<= correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {109020#(and (<= correct_version_~x~0 2) (<= 5 correct_version_~i~0))} is VALID [2022-04-27 22:30:46,506 INFO L290 TraceCheckUtils]: 20: Hoare triple {109020#(and (<= correct_version_~x~0 2) (<= 5 correct_version_~i~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {109024#(and (<= correct_version_~x~0 3) (<= 5 correct_version_~i~0))} is VALID [2022-04-27 22:30:46,507 INFO L290 TraceCheckUtils]: 21: Hoare triple {109024#(and (<= correct_version_~x~0 3) (<= 5 correct_version_~i~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {109028#(and (<= 5 correct_version_~i~0) (<= correct_version_~x~0 4))} is VALID [2022-04-27 22:30:46,507 INFO L290 TraceCheckUtils]: 22: Hoare triple {109028#(and (<= 5 correct_version_~i~0) (<= correct_version_~x~0 4))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,507 INFO L290 TraceCheckUtils]: 23: Hoare triple {108905#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {108905#false} is VALID [2022-04-27 22:30:46,507 INFO L290 TraceCheckUtils]: 24: Hoare triple {108905#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,507 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {108905#false} {108904#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,507 INFO L290 TraceCheckUtils]: 26: Hoare triple {108905#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {108905#false} is VALID [2022-04-27 22:30:46,507 INFO L272 TraceCheckUtils]: 27: Hoare triple {108905#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 28: Hoare triple {108905#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 29: Hoare triple {108905#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 30: Hoare triple {108905#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 31: Hoare triple {108905#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 32: Hoare triple {108905#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 33: Hoare triple {108905#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 34: Hoare triple {108905#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 35: Hoare triple {108905#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 36: Hoare triple {108905#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 37: Hoare triple {108905#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 38: Hoare triple {108905#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 39: Hoare triple {108905#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 40: Hoare triple {108905#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 41: Hoare triple {108905#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108905#false} is VALID [2022-04-27 22:30:46,508 INFO L290 TraceCheckUtils]: 42: Hoare triple {108905#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L290 TraceCheckUtils]: 43: Hoare triple {108905#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L290 TraceCheckUtils]: 44: Hoare triple {108905#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L290 TraceCheckUtils]: 45: Hoare triple {108905#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {108905#false} {108905#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L290 TraceCheckUtils]: 47: Hoare triple {108905#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L272 TraceCheckUtils]: 48: Hoare triple {108905#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L290 TraceCheckUtils]: 49: Hoare triple {108905#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L290 TraceCheckUtils]: 50: Hoare triple {108905#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L290 TraceCheckUtils]: 51: Hoare triple {108905#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,509 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:30:46,509 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:30:46,621 INFO L290 TraceCheckUtils]: 51: Hoare triple {108905#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,621 INFO L290 TraceCheckUtils]: 50: Hoare triple {108905#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,621 INFO L290 TraceCheckUtils]: 49: Hoare triple {108905#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {108905#false} is VALID [2022-04-27 22:30:46,621 INFO L272 TraceCheckUtils]: 48: Hoare triple {108905#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {108905#false} is VALID [2022-04-27 22:30:46,621 INFO L290 TraceCheckUtils]: 47: Hoare triple {108905#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {108905#false} is VALID [2022-04-27 22:30:46,621 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {108904#true} {108905#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,621 INFO L290 TraceCheckUtils]: 45: Hoare triple {108904#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,621 INFO L290 TraceCheckUtils]: 44: Hoare triple {108904#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {108904#true} is VALID [2022-04-27 22:30:46,621 INFO L290 TraceCheckUtils]: 43: Hoare triple {108904#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 42: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 41: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 40: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 39: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 38: Hoare triple {108904#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 37: Hoare triple {108904#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 36: Hoare triple {108904#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 35: Hoare triple {108904#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 34: Hoare triple {108904#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 33: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 32: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 31: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 30: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 29: Hoare triple {108904#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {108904#true} is VALID [2022-04-27 22:30:46,622 INFO L290 TraceCheckUtils]: 28: Hoare triple {108904#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {108904#true} is VALID [2022-04-27 22:30:46,623 INFO L272 TraceCheckUtils]: 27: Hoare triple {108905#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,623 INFO L290 TraceCheckUtils]: 26: Hoare triple {108905#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {108905#false} is VALID [2022-04-27 22:30:46,623 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {108905#false} {108904#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {108905#false} is VALID [2022-04-27 22:30:46,623 INFO L290 TraceCheckUtils]: 24: Hoare triple {108905#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,623 INFO L290 TraceCheckUtils]: 23: Hoare triple {108905#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {108905#false} is VALID [2022-04-27 22:30:46,623 INFO L290 TraceCheckUtils]: 22: Hoare triple {108957#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {108905#false} is VALID [2022-04-27 22:30:46,624 INFO L290 TraceCheckUtils]: 21: Hoare triple {108956#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108957#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,624 INFO L290 TraceCheckUtils]: 20: Hoare triple {108955#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108956#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,624 INFO L290 TraceCheckUtils]: 19: Hoare triple {108954#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108955#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,625 INFO L290 TraceCheckUtils]: 18: Hoare triple {108953#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108954#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,625 INFO L290 TraceCheckUtils]: 17: Hoare triple {108952#(<= 5 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {108953#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} is VALID [2022-04-27 22:30:46,625 INFO L290 TraceCheckUtils]: 16: Hoare triple {108952#(<= 5 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,625 INFO L290 TraceCheckUtils]: 15: Hoare triple {108952#(<= 5 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,625 INFO L290 TraceCheckUtils]: 14: Hoare triple {108952#(<= 5 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,626 INFO L290 TraceCheckUtils]: 13: Hoare triple {108951#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108952#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,626 INFO L290 TraceCheckUtils]: 12: Hoare triple {108950#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108951#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,626 INFO L290 TraceCheckUtils]: 11: Hoare triple {108949#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108950#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,627 INFO L290 TraceCheckUtils]: 10: Hoare triple {108948#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108949#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,627 INFO L290 TraceCheckUtils]: 9: Hoare triple {108947#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {108948#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,627 INFO L290 TraceCheckUtils]: 8: Hoare triple {108904#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {108947#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:30:46,627 INFO L272 TraceCheckUtils]: 7: Hoare triple {108904#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L290 TraceCheckUtils]: 6: Hoare triple {108904#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L290 TraceCheckUtils]: 5: Hoare triple {108904#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L272 TraceCheckUtils]: 4: Hoare triple {108904#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {108904#true} {108904#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L290 TraceCheckUtils]: 2: Hoare triple {108904#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L290 TraceCheckUtils]: 1: Hoare triple {108904#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L272 TraceCheckUtils]: 0: Hoare triple {108904#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {108904#true} is VALID [2022-04-27 22:30:46,628 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:30:46,628 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1890336175] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:30:46,628 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:30:46,628 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13, 13] total 19 [2022-04-27 22:30:46,628 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [633862496] [2022-04-27 22:30:46,629 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:30:46,629 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.789473684210526) internal successors, (53), 18 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 52 [2022-04-27 22:30:46,629 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:30:46,629 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.789473684210526) internal successors, (53), 18 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:30:46,653 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:30:46,653 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-27 22:30:46,653 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:30:46,653 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-27 22:30:46,653 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=115, Invalid=227, Unknown=0, NotChecked=0, Total=342 [2022-04-27 22:30:46,654 INFO L87 Difference]: Start difference. First operand 620 states and 703 transitions. Second operand has 19 states, 19 states have (on average 2.789473684210526) internal successors, (53), 18 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:30:50,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:50,557 INFO L93 Difference]: Finished difference Result 944 states and 1054 transitions. [2022-04-27 22:30:50,557 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-27 22:30:50,557 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.789473684210526) internal successors, (53), 18 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 52 [2022-04-27 22:30:50,557 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:30:50,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.789473684210526) internal successors, (53), 18 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:30:50,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 111 transitions. [2022-04-27 22:30:50,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.789473684210526) internal successors, (53), 18 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:30:50,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 111 transitions. [2022-04-27 22:30:50,558 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 111 transitions. [2022-04-27 22:30:50,607 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:30:50,629 INFO L225 Difference]: With dead ends: 944 [2022-04-27 22:30:50,629 INFO L226 Difference]: Without dead ends: 617 [2022-04-27 22:30:50,632 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 104 SyntacticMatches, 1 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 325 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=494, Invalid=1066, Unknown=0, NotChecked=0, Total=1560 [2022-04-27 22:30:50,633 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 77 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 289 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 79 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 329 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 289 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:30:50,633 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [79 Valid, 75 Invalid, 329 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 289 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:30:50,633 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 617 states. [2022-04-27 22:30:53,990 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 617 to 609. [2022-04-27 22:30:53,990 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:30:53,991 INFO L82 GeneralOperation]: Start isEquivalent. First operand 617 states. Second operand has 609 states, 528 states have (on average 1.1477272727272727) internal successors, (606), 576 states have internal predecessors, (606), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:30:53,991 INFO L74 IsIncluded]: Start isIncluded. First operand 617 states. Second operand has 609 states, 528 states have (on average 1.1477272727272727) internal successors, (606), 576 states have internal predecessors, (606), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:30:53,992 INFO L87 Difference]: Start difference. First operand 617 states. Second operand has 609 states, 528 states have (on average 1.1477272727272727) internal successors, (606), 576 states have internal predecessors, (606), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:30:54,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:54,006 INFO L93 Difference]: Finished difference Result 617 states and 696 transitions. [2022-04-27 22:30:54,006 INFO L276 IsEmpty]: Start isEmpty. Operand 617 states and 696 transitions. [2022-04-27 22:30:54,009 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:54,009 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:54,009 INFO L74 IsIncluded]: Start isIncluded. First operand has 609 states, 528 states have (on average 1.1477272727272727) internal successors, (606), 576 states have internal predecessors, (606), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) Second operand 617 states. [2022-04-27 22:30:54,010 INFO L87 Difference]: Start difference. First operand has 609 states, 528 states have (on average 1.1477272727272727) internal successors, (606), 576 states have internal predecessors, (606), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) Second operand 617 states. [2022-04-27 22:30:54,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:54,024 INFO L93 Difference]: Finished difference Result 617 states and 696 transitions. [2022-04-27 22:30:54,024 INFO L276 IsEmpty]: Start isEmpty. Operand 617 states and 696 transitions. [2022-04-27 22:30:54,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:30:54,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:30:54,027 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:30:54,027 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:30:54,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 609 states, 528 states have (on average 1.1477272727272727) internal successors, (606), 576 states have internal predecessors, (606), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:30:54,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 609 states to 609 states and 686 transitions. [2022-04-27 22:30:54,051 INFO L78 Accepts]: Start accepts. Automaton has 609 states and 686 transitions. Word has length 52 [2022-04-27 22:30:54,051 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:30:54,051 INFO L495 AbstractCegarLoop]: Abstraction has 609 states and 686 transitions. [2022-04-27 22:30:54,051 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.789473684210526) internal successors, (53), 18 states have internal predecessors, (53), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:30:54,051 INFO L276 IsEmpty]: Start isEmpty. Operand 609 states and 686 transitions. [2022-04-27 22:30:54,054 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-27 22:30:54,054 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:30:54,054 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:30:54,072 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (60)] Forceful destruction successful, exit code 0 [2022-04-27 22:30:54,272 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 60 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable68 [2022-04-27 22:30:54,272 INFO L420 AbstractCegarLoop]: === Iteration 70 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:30:54,272 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:30:54,272 INFO L85 PathProgramCache]: Analyzing trace with hash -753408037, now seen corresponding path program 60 times [2022-04-27 22:30:54,272 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:30:54,272 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1913250828] [2022-04-27 22:30:54,273 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:30:54,273 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:30:54,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:54,298 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:30:54,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:54,300 INFO L290 TraceCheckUtils]: 0: Hoare triple {112832#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {112790#true} is VALID [2022-04-27 22:30:54,300 INFO L290 TraceCheckUtils]: 1: Hoare triple {112790#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,300 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {112790#true} {112790#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,300 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:30:54,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:54,305 INFO L290 TraceCheckUtils]: 0: Hoare triple {112790#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 1: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 2: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 3: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 4: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 5: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 6: Hoare triple {112790#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 7: Hoare triple {112790#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 8: Hoare triple {112790#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 9: Hoare triple {112790#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,306 INFO L290 TraceCheckUtils]: 10: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L290 TraceCheckUtils]: 11: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L290 TraceCheckUtils]: 12: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L290 TraceCheckUtils]: 13: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L290 TraceCheckUtils]: 14: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L290 TraceCheckUtils]: 15: Hoare triple {112790#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L290 TraceCheckUtils]: 16: Hoare triple {112790#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L290 TraceCheckUtils]: 17: Hoare triple {112790#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {112790#true} {112790#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,307 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:30:54,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:54,359 INFO L290 TraceCheckUtils]: 0: Hoare triple {112790#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {112833#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:30:54,360 INFO L290 TraceCheckUtils]: 1: Hoare triple {112833#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112834#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:30:54,360 INFO L290 TraceCheckUtils]: 2: Hoare triple {112834#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112835#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:30:54,360 INFO L290 TraceCheckUtils]: 3: Hoare triple {112835#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112836#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:30:54,361 INFO L290 TraceCheckUtils]: 4: Hoare triple {112836#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112837#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:30:54,361 INFO L290 TraceCheckUtils]: 5: Hoare triple {112837#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,361 INFO L290 TraceCheckUtils]: 6: Hoare triple {112838#(<= 5 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,361 INFO L290 TraceCheckUtils]: 7: Hoare triple {112838#(<= 5 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,362 INFO L290 TraceCheckUtils]: 8: Hoare triple {112838#(<= 5 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,362 INFO L290 TraceCheckUtils]: 9: Hoare triple {112838#(<= 5 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112839#(<= (+ 5 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,362 INFO L290 TraceCheckUtils]: 10: Hoare triple {112839#(<= (+ 5 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112840#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:30:54,363 INFO L290 TraceCheckUtils]: 11: Hoare triple {112840#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112841#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,363 INFO L290 TraceCheckUtils]: 12: Hoare triple {112841#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112842#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,363 INFO L290 TraceCheckUtils]: 13: Hoare triple {112842#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112843#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,364 INFO L290 TraceCheckUtils]: 14: Hoare triple {112843#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,364 INFO L290 TraceCheckUtils]: 15: Hoare triple {112791#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {112791#false} is VALID [2022-04-27 22:30:54,364 INFO L290 TraceCheckUtils]: 16: Hoare triple {112791#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,364 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {112791#false} {112790#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {112791#false} is VALID [2022-04-27 22:30:54,364 INFO L272 TraceCheckUtils]: 0: Hoare triple {112790#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112832#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:30:54,364 INFO L290 TraceCheckUtils]: 1: Hoare triple {112832#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {112790#true} is VALID [2022-04-27 22:30:54,364 INFO L290 TraceCheckUtils]: 2: Hoare triple {112790#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,364 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {112790#true} {112790#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,364 INFO L272 TraceCheckUtils]: 4: Hoare triple {112790#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 5: Hoare triple {112790#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 6: Hoare triple {112790#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L272 TraceCheckUtils]: 7: Hoare triple {112790#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 8: Hoare triple {112790#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 9: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 10: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 11: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 12: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 13: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 14: Hoare triple {112790#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 15: Hoare triple {112790#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 16: Hoare triple {112790#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 17: Hoare triple {112790#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,365 INFO L290 TraceCheckUtils]: 18: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 19: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 20: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 21: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 22: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 23: Hoare triple {112790#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 24: Hoare triple {112790#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 25: Hoare triple {112790#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {112790#true} {112790#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 27: Hoare triple {112790#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L272 TraceCheckUtils]: 28: Hoare triple {112790#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,366 INFO L290 TraceCheckUtils]: 29: Hoare triple {112790#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {112833#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:30:54,367 INFO L290 TraceCheckUtils]: 30: Hoare triple {112833#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112834#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:30:54,367 INFO L290 TraceCheckUtils]: 31: Hoare triple {112834#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112835#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:30:54,367 INFO L290 TraceCheckUtils]: 32: Hoare triple {112835#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112836#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:30:54,368 INFO L290 TraceCheckUtils]: 33: Hoare triple {112836#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112837#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:30:54,368 INFO L290 TraceCheckUtils]: 34: Hoare triple {112837#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,369 INFO L290 TraceCheckUtils]: 35: Hoare triple {112838#(<= 5 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,369 INFO L290 TraceCheckUtils]: 36: Hoare triple {112838#(<= 5 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,369 INFO L290 TraceCheckUtils]: 37: Hoare triple {112838#(<= 5 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,369 INFO L290 TraceCheckUtils]: 38: Hoare triple {112838#(<= 5 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112839#(<= (+ 5 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,370 INFO L290 TraceCheckUtils]: 39: Hoare triple {112839#(<= (+ 5 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112840#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:30:54,370 INFO L290 TraceCheckUtils]: 40: Hoare triple {112840#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112841#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,370 INFO L290 TraceCheckUtils]: 41: Hoare triple {112841#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112842#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 42: Hoare triple {112842#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112843#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 43: Hoare triple {112843#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 44: Hoare triple {112791#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 45: Hoare triple {112791#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {112791#false} {112790#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 47: Hoare triple {112791#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L272 TraceCheckUtils]: 48: Hoare triple {112791#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 49: Hoare triple {112791#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 50: Hoare triple {112791#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L290 TraceCheckUtils]: 51: Hoare triple {112791#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,371 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:30:54,372 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:30:54,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1913250828] [2022-04-27 22:30:54,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1913250828] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:30:54,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1510899582] [2022-04-27 22:30:54,372 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:30:54,372 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:30:54,372 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:30:54,373 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:30:54,374 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (61)] Waiting until timeout for monitored process [2022-04-27 22:30:54,455 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-27 22:30:54,455 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:30:54,456 INFO L263 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-27 22:30:54,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:30:54,463 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:30:54,597 INFO L272 TraceCheckUtils]: 0: Hoare triple {112790#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 1: Hoare triple {112790#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 2: Hoare triple {112790#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {112790#true} {112790#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L272 TraceCheckUtils]: 4: Hoare triple {112790#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 5: Hoare triple {112790#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 6: Hoare triple {112790#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L272 TraceCheckUtils]: 7: Hoare triple {112790#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 8: Hoare triple {112790#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 9: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 10: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 11: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 12: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,598 INFO L290 TraceCheckUtils]: 13: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 14: Hoare triple {112790#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 15: Hoare triple {112790#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 16: Hoare triple {112790#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 17: Hoare triple {112790#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 18: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 19: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 20: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 21: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 22: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 23: Hoare triple {112790#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 24: Hoare triple {112790#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 25: Hoare triple {112790#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {112790#true} {112790#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L290 TraceCheckUtils]: 27: Hoare triple {112790#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {112790#true} is VALID [2022-04-27 22:30:54,599 INFO L272 TraceCheckUtils]: 28: Hoare triple {112790#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,600 INFO L290 TraceCheckUtils]: 29: Hoare triple {112790#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {112833#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:30:54,600 INFO L290 TraceCheckUtils]: 30: Hoare triple {112833#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112834#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:30:54,600 INFO L290 TraceCheckUtils]: 31: Hoare triple {112834#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112835#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:30:54,601 INFO L290 TraceCheckUtils]: 32: Hoare triple {112835#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112836#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:30:54,601 INFO L290 TraceCheckUtils]: 33: Hoare triple {112836#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112837#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:30:54,601 INFO L290 TraceCheckUtils]: 34: Hoare triple {112837#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,602 INFO L290 TraceCheckUtils]: 35: Hoare triple {112838#(<= 5 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,602 INFO L290 TraceCheckUtils]: 36: Hoare triple {112838#(<= 5 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,602 INFO L290 TraceCheckUtils]: 37: Hoare triple {112838#(<= 5 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,602 INFO L290 TraceCheckUtils]: 38: Hoare triple {112838#(<= 5 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112961#(and (<= student_version_~x~1 0) (<= 5 student_version_~i~1))} is VALID [2022-04-27 22:30:54,602 INFO L290 TraceCheckUtils]: 39: Hoare triple {112961#(and (<= student_version_~x~1 0) (<= 5 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112965#(and (<= student_version_~x~1 1) (<= 5 student_version_~i~1))} is VALID [2022-04-27 22:30:54,603 INFO L290 TraceCheckUtils]: 40: Hoare triple {112965#(and (<= student_version_~x~1 1) (<= 5 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112969#(and (<= student_version_~x~1 2) (<= 5 student_version_~i~1))} is VALID [2022-04-27 22:30:54,603 INFO L290 TraceCheckUtils]: 41: Hoare triple {112969#(and (<= student_version_~x~1 2) (<= 5 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112973#(and (<= student_version_~x~1 3) (<= 5 student_version_~i~1))} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 42: Hoare triple {112973#(and (<= student_version_~x~1 3) (<= 5 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112977#(and (<= 5 student_version_~i~1) (<= student_version_~x~1 4))} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 43: Hoare triple {112977#(and (<= 5 student_version_~i~1) (<= student_version_~x~1 4))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 44: Hoare triple {112791#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 45: Hoare triple {112791#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {112791#false} {112790#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 47: Hoare triple {112791#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L272 TraceCheckUtils]: 48: Hoare triple {112791#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 49: Hoare triple {112791#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 50: Hoare triple {112791#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,604 INFO L290 TraceCheckUtils]: 51: Hoare triple {112791#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,605 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:30:54,605 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:30:54,716 INFO L290 TraceCheckUtils]: 51: Hoare triple {112791#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,716 INFO L290 TraceCheckUtils]: 50: Hoare triple {112791#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,716 INFO L290 TraceCheckUtils]: 49: Hoare triple {112791#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {112791#false} is VALID [2022-04-27 22:30:54,716 INFO L272 TraceCheckUtils]: 48: Hoare triple {112791#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {112791#false} is VALID [2022-04-27 22:30:54,716 INFO L290 TraceCheckUtils]: 47: Hoare triple {112791#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {112791#false} is VALID [2022-04-27 22:30:54,716 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {112791#false} {112790#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {112791#false} is VALID [2022-04-27 22:30:54,716 INFO L290 TraceCheckUtils]: 45: Hoare triple {112791#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,716 INFO L290 TraceCheckUtils]: 44: Hoare triple {112791#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {112791#false} is VALID [2022-04-27 22:30:54,717 INFO L290 TraceCheckUtils]: 43: Hoare triple {112843#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {112791#false} is VALID [2022-04-27 22:30:54,717 INFO L290 TraceCheckUtils]: 42: Hoare triple {112842#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112843#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,717 INFO L290 TraceCheckUtils]: 41: Hoare triple {112841#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112842#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,718 INFO L290 TraceCheckUtils]: 40: Hoare triple {112840#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112841#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,718 INFO L290 TraceCheckUtils]: 39: Hoare triple {112839#(<= (+ 5 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112840#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:30:54,718 INFO L290 TraceCheckUtils]: 38: Hoare triple {112838#(<= 5 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {112839#(<= (+ 5 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:30:54,719 INFO L290 TraceCheckUtils]: 37: Hoare triple {112838#(<= 5 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,719 INFO L290 TraceCheckUtils]: 36: Hoare triple {112838#(<= 5 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,719 INFO L290 TraceCheckUtils]: 35: Hoare triple {112838#(<= 5 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,719 INFO L290 TraceCheckUtils]: 34: Hoare triple {112837#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112838#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:30:54,720 INFO L290 TraceCheckUtils]: 33: Hoare triple {112836#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112837#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:30:54,720 INFO L290 TraceCheckUtils]: 32: Hoare triple {112835#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112836#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:30:54,720 INFO L290 TraceCheckUtils]: 31: Hoare triple {112834#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112835#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:30:54,721 INFO L290 TraceCheckUtils]: 30: Hoare triple {112833#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {112834#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:30:54,721 INFO L290 TraceCheckUtils]: 29: Hoare triple {112790#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {112833#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:30:54,721 INFO L272 TraceCheckUtils]: 28: Hoare triple {112790#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,721 INFO L290 TraceCheckUtils]: 27: Hoare triple {112790#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {112790#true} is VALID [2022-04-27 22:30:54,721 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {112790#true} {112790#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,721 INFO L290 TraceCheckUtils]: 25: Hoare triple {112790#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 24: Hoare triple {112790#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 23: Hoare triple {112790#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 22: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 21: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 20: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 19: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 18: Hoare triple {112790#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 17: Hoare triple {112790#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 16: Hoare triple {112790#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 15: Hoare triple {112790#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 14: Hoare triple {112790#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,722 INFO L290 TraceCheckUtils]: 13: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L290 TraceCheckUtils]: 12: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L290 TraceCheckUtils]: 11: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L290 TraceCheckUtils]: 10: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L290 TraceCheckUtils]: 9: Hoare triple {112790#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L290 TraceCheckUtils]: 8: Hoare triple {112790#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L272 TraceCheckUtils]: 7: Hoare triple {112790#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L290 TraceCheckUtils]: 6: Hoare triple {112790#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L290 TraceCheckUtils]: 5: Hoare triple {112790#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L272 TraceCheckUtils]: 4: Hoare triple {112790#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,723 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {112790#true} {112790#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,724 INFO L290 TraceCheckUtils]: 2: Hoare triple {112790#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,724 INFO L290 TraceCheckUtils]: 1: Hoare triple {112790#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {112790#true} is VALID [2022-04-27 22:30:54,724 INFO L272 TraceCheckUtils]: 0: Hoare triple {112790#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112790#true} is VALID [2022-04-27 22:30:54,724 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 15 proven. 10 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:30:54,724 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1510899582] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:30:54,724 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:30:54,724 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13, 13] total 19 [2022-04-27 22:30:54,724 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1366264617] [2022-04-27 22:30:54,724 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:30:54,725 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 52 [2022-04-27 22:30:54,725 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:30:54,725 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:30:54,761 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:30:54,762 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-27 22:30:54,762 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:30:54,762 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-27 22:30:54,762 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=115, Invalid=227, Unknown=0, NotChecked=0, Total=342 [2022-04-27 22:30:54,762 INFO L87 Difference]: Start difference. First operand 609 states and 686 transitions. Second operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:30:58,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:30:58,884 INFO L93 Difference]: Finished difference Result 651 states and 736 transitions. [2022-04-27 22:30:58,884 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-27 22:30:58,884 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 52 [2022-04-27 22:30:58,884 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:30:58,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:30:58,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 98 transitions. [2022-04-27 22:30:58,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:30:58,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 98 transitions. [2022-04-27 22:30:58,886 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 98 transitions. [2022-04-27 22:30:58,936 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:30:58,955 INFO L225 Difference]: With dead ends: 651 [2022-04-27 22:30:58,956 INFO L226 Difference]: Without dead ends: 618 [2022-04-27 22:30:58,958 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 104 SyntacticMatches, 1 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 325 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=494, Invalid=1066, Unknown=0, NotChecked=0, Total=1560 [2022-04-27 22:30:58,958 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 75 mSDsluCounter, 42 mSDsCounter, 0 mSdLazyCounter, 514 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 551 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 514 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:30:58,958 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 90 Invalid, 551 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 514 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:30:58,959 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 618 states. [2022-04-27 22:31:03,523 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 618 to 618. [2022-04-27 22:31:03,523 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:31:03,523 INFO L82 GeneralOperation]: Start isEquivalent. First operand 618 states. Second operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:31:03,524 INFO L74 IsIncluded]: Start isIncluded. First operand 618 states. Second operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:31:03,524 INFO L87 Difference]: Start difference. First operand 618 states. Second operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:31:03,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:03,538 INFO L93 Difference]: Finished difference Result 618 states and 695 transitions. [2022-04-27 22:31:03,538 INFO L276 IsEmpty]: Start isEmpty. Operand 618 states and 695 transitions. [2022-04-27 22:31:03,540 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:03,540 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:03,541 INFO L74 IsIncluded]: Start isIncluded. First operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) Second operand 618 states. [2022-04-27 22:31:03,541 INFO L87 Difference]: Start difference. First operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) Second operand 618 states. [2022-04-27 22:31:03,555 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:03,556 INFO L93 Difference]: Finished difference Result 618 states and 695 transitions. [2022-04-27 22:31:03,556 INFO L276 IsEmpty]: Start isEmpty. Operand 618 states and 695 transitions. [2022-04-27 22:31:03,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:03,558 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:03,558 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:31:03,558 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:31:03,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (51), 27 states have call predecessors, (51), 27 states have call successors, (51) [2022-04-27 22:31:03,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 618 states to 618 states and 695 transitions. [2022-04-27 22:31:03,577 INFO L78 Accepts]: Start accepts. Automaton has 618 states and 695 transitions. Word has length 52 [2022-04-27 22:31:03,577 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:31:03,577 INFO L495 AbstractCegarLoop]: Abstraction has 618 states and 695 transitions. [2022-04-27 22:31:03,577 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:31:03,577 INFO L276 IsEmpty]: Start isEmpty. Operand 618 states and 695 transitions. [2022-04-27 22:31:03,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-27 22:31:03,581 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:31:03,581 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 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-27 22:31:03,597 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (61)] Forceful destruction successful, exit code 0 [2022-04-27 22:31:03,789 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable69,61 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:03,790 INFO L420 AbstractCegarLoop]: === Iteration 71 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:31:03,790 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:31:03,790 INFO L85 PathProgramCache]: Analyzing trace with hash 1162907554, now seen corresponding path program 61 times [2022-04-27 22:31:03,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:31:03,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [669521621] [2022-04-27 22:31:03,790 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:31:03,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:31:03,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:03,880 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:31:03,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:03,883 INFO L290 TraceCheckUtils]: 0: Hoare triple {116330#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {116281#true} is VALID [2022-04-27 22:31:03,883 INFO L290 TraceCheckUtils]: 1: Hoare triple {116281#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:03,883 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {116281#true} {116281#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:03,883 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:31:03,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:04,094 INFO L290 TraceCheckUtils]: 0: Hoare triple {116281#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,095 INFO L290 TraceCheckUtils]: 1: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,095 INFO L290 TraceCheckUtils]: 3: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:04,096 INFO L290 TraceCheckUtils]: 4: Hoare triple {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:04,096 INFO L290 TraceCheckUtils]: 5: Hoare triple {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:04,097 INFO L290 TraceCheckUtils]: 6: Hoare triple {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:04,097 INFO L290 TraceCheckUtils]: 7: Hoare triple {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,098 INFO L290 TraceCheckUtils]: 8: Hoare triple {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,098 INFO L290 TraceCheckUtils]: 9: Hoare triple {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:04,099 INFO L290 TraceCheckUtils]: 10: Hoare triple {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:31:04,099 INFO L290 TraceCheckUtils]: 11: Hoare triple {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,100 INFO L290 TraceCheckUtils]: 12: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,100 INFO L290 TraceCheckUtils]: 13: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116341#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} is VALID [2022-04-27 22:31:04,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {116341#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:04,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:04,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:04,102 INFO L290 TraceCheckUtils]: 17: Hoare triple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:04,102 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {116281#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {116305#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:31:04,103 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:31:04,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:04,434 INFO L290 TraceCheckUtils]: 0: Hoare triple {116281#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:04,435 INFO L290 TraceCheckUtils]: 1: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:04,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:04,436 INFO L290 TraceCheckUtils]: 3: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:04,436 INFO L290 TraceCheckUtils]: 4: Hoare triple {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:04,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:04,437 INFO L290 TraceCheckUtils]: 6: Hoare triple {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:04,438 INFO L290 TraceCheckUtils]: 7: Hoare triple {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:04,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:04,439 INFO L290 TraceCheckUtils]: 9: Hoare triple {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:04,439 INFO L290 TraceCheckUtils]: 10: Hoare triple {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:31:04,440 INFO L290 TraceCheckUtils]: 11: Hoare triple {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:04,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:04,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116354#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:04,441 INFO L290 TraceCheckUtils]: 14: Hoare triple {116354#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:04,441 INFO L290 TraceCheckUtils]: 15: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:04,441 INFO L290 TraceCheckUtils]: 16: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:04,442 INFO L290 TraceCheckUtils]: 17: Hoare triple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:04,443 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {116326#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:04,443 INFO L272 TraceCheckUtils]: 0: Hoare triple {116281#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116330#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:31:04,443 INFO L290 TraceCheckUtils]: 1: Hoare triple {116330#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {116281#true} is VALID [2022-04-27 22:31:04,443 INFO L290 TraceCheckUtils]: 2: Hoare triple {116281#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:04,443 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {116281#true} {116281#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:04,443 INFO L272 TraceCheckUtils]: 4: Hoare triple {116281#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:04,444 INFO L290 TraceCheckUtils]: 5: Hoare triple {116281#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:04,444 INFO L290 TraceCheckUtils]: 6: Hoare triple {116281#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:04,444 INFO L272 TraceCheckUtils]: 7: Hoare triple {116281#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:04,444 INFO L290 TraceCheckUtils]: 8: Hoare triple {116281#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,444 INFO L290 TraceCheckUtils]: 9: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,445 INFO L290 TraceCheckUtils]: 10: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,445 INFO L290 TraceCheckUtils]: 11: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:04,446 INFO L290 TraceCheckUtils]: 12: Hoare triple {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:04,446 INFO L290 TraceCheckUtils]: 13: Hoare triple {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:04,447 INFO L290 TraceCheckUtils]: 14: Hoare triple {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:04,447 INFO L290 TraceCheckUtils]: 15: Hoare triple {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,448 INFO L290 TraceCheckUtils]: 16: Hoare triple {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,448 INFO L290 TraceCheckUtils]: 17: Hoare triple {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:04,448 INFO L290 TraceCheckUtils]: 18: Hoare triple {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:31:04,449 INFO L290 TraceCheckUtils]: 19: Hoare triple {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,449 INFO L290 TraceCheckUtils]: 20: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:04,450 INFO L290 TraceCheckUtils]: 21: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116341#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} is VALID [2022-04-27 22:31:04,450 INFO L290 TraceCheckUtils]: 22: Hoare triple {116341#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:04,450 INFO L290 TraceCheckUtils]: 23: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:04,451 INFO L290 TraceCheckUtils]: 24: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:04,451 INFO L290 TraceCheckUtils]: 25: Hoare triple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:04,452 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {116281#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {116305#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:31:04,452 INFO L290 TraceCheckUtils]: 27: Hoare triple {116305#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} is VALID [2022-04-27 22:31:04,452 INFO L272 TraceCheckUtils]: 28: Hoare triple {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:04,453 INFO L290 TraceCheckUtils]: 29: Hoare triple {116281#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:04,453 INFO L290 TraceCheckUtils]: 30: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:04,453 INFO L290 TraceCheckUtils]: 31: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:04,454 INFO L290 TraceCheckUtils]: 32: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:04,454 INFO L290 TraceCheckUtils]: 33: Hoare triple {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:04,455 INFO L290 TraceCheckUtils]: 34: Hoare triple {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:04,455 INFO L290 TraceCheckUtils]: 35: Hoare triple {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:04,456 INFO L290 TraceCheckUtils]: 36: Hoare triple {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:04,456 INFO L290 TraceCheckUtils]: 37: Hoare triple {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:04,457 INFO L290 TraceCheckUtils]: 38: Hoare triple {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:04,457 INFO L290 TraceCheckUtils]: 39: Hoare triple {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:31:04,458 INFO L290 TraceCheckUtils]: 40: Hoare triple {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:04,458 INFO L290 TraceCheckUtils]: 41: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:04,458 INFO L290 TraceCheckUtils]: 42: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116354#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:04,459 INFO L290 TraceCheckUtils]: 43: Hoare triple {116354#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:04,459 INFO L290 TraceCheckUtils]: 44: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:04,460 INFO L290 TraceCheckUtils]: 45: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:04,460 INFO L290 TraceCheckUtils]: 46: Hoare triple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:04,461 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {116326#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:04,461 INFO L290 TraceCheckUtils]: 48: Hoare triple {116326#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {116327#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:04,462 INFO L272 TraceCheckUtils]: 49: Hoare triple {116327#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {116328#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:31:04,462 INFO L290 TraceCheckUtils]: 50: Hoare triple {116328#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {116329#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:31:04,463 INFO L290 TraceCheckUtils]: 51: Hoare triple {116329#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {116282#false} is VALID [2022-04-27 22:31:04,463 INFO L290 TraceCheckUtils]: 52: Hoare triple {116282#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116282#false} is VALID [2022-04-27 22:31:04,463 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 0 proven. 92 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:31:04,463 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:31:04,463 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [669521621] [2022-04-27 22:31:04,463 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [669521621] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:31:04,463 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [57443499] [2022-04-27 22:31:04,463 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:31:04,463 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:04,463 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:31:04,464 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:31:04,465 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (62)] Waiting until timeout for monitored process [2022-04-27 22:31:04,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:04,553 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 63 conjunts are in the unsatisfiable core [2022-04-27 22:31:04,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:04,568 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:31:05,244 INFO L272 TraceCheckUtils]: 0: Hoare triple {116281#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,244 INFO L290 TraceCheckUtils]: 1: Hoare triple {116281#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {116281#true} is VALID [2022-04-27 22:31:05,244 INFO L290 TraceCheckUtils]: 2: Hoare triple {116281#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,244 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {116281#true} {116281#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,244 INFO L272 TraceCheckUtils]: 4: Hoare triple {116281#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,244 INFO L290 TraceCheckUtils]: 5: Hoare triple {116281#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:05,244 INFO L290 TraceCheckUtils]: 6: Hoare triple {116281#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,244 INFO L272 TraceCheckUtils]: 7: Hoare triple {116281#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:05,245 INFO L290 TraceCheckUtils]: 8: Hoare triple {116281#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,245 INFO L290 TraceCheckUtils]: 10: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,246 INFO L290 TraceCheckUtils]: 11: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:05,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:05,247 INFO L290 TraceCheckUtils]: 13: Hoare triple {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:05,247 INFO L290 TraceCheckUtils]: 14: Hoare triple {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:05,248 INFO L290 TraceCheckUtils]: 15: Hoare triple {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,248 INFO L290 TraceCheckUtils]: 16: Hoare triple {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,249 INFO L290 TraceCheckUtils]: 17: Hoare triple {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:05,249 INFO L290 TraceCheckUtils]: 18: Hoare triple {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:31:05,250 INFO L290 TraceCheckUtils]: 19: Hoare triple {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,250 INFO L290 TraceCheckUtils]: 20: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,250 INFO L290 TraceCheckUtils]: 21: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116423#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:31:05,251 INFO L290 TraceCheckUtils]: 22: Hoare triple {116423#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:05,251 INFO L290 TraceCheckUtils]: 23: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:05,251 INFO L290 TraceCheckUtils]: 24: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:05,252 INFO L290 TraceCheckUtils]: 25: Hoare triple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:05,252 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {116281#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {116305#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:31:05,253 INFO L290 TraceCheckUtils]: 27: Hoare triple {116305#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} is VALID [2022-04-27 22:31:05,253 INFO L272 TraceCheckUtils]: 28: Hoare triple {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:05,253 INFO L290 TraceCheckUtils]: 29: Hoare triple {116281#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:05,254 INFO L290 TraceCheckUtils]: 30: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:05,254 INFO L290 TraceCheckUtils]: 31: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:05,254 INFO L290 TraceCheckUtils]: 32: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:05,255 INFO L290 TraceCheckUtils]: 33: Hoare triple {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:05,255 INFO L290 TraceCheckUtils]: 34: Hoare triple {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:05,256 INFO L290 TraceCheckUtils]: 35: Hoare triple {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:05,256 INFO L290 TraceCheckUtils]: 36: Hoare triple {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:05,257 INFO L290 TraceCheckUtils]: 37: Hoare triple {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:05,257 INFO L290 TraceCheckUtils]: 38: Hoare triple {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:05,258 INFO L290 TraceCheckUtils]: 39: Hoare triple {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:31:05,258 INFO L290 TraceCheckUtils]: 40: Hoare triple {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:05,259 INFO L290 TraceCheckUtils]: 41: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:05,259 INFO L290 TraceCheckUtils]: 42: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116487#(and (= student_version_~y~1 0) (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:05,259 INFO L290 TraceCheckUtils]: 43: Hoare triple {116487#(and (= student_version_~y~1 0) (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:05,260 INFO L290 TraceCheckUtils]: 44: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:05,260 INFO L290 TraceCheckUtils]: 45: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:05,260 INFO L290 TraceCheckUtils]: 46: Hoare triple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:05,261 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {116503#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= |main_#t~ret9| 9) (<= 9 |main_#t~ret9|))} is VALID [2022-04-27 22:31:05,261 INFO L290 TraceCheckUtils]: 48: Hoare triple {116503#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= |main_#t~ret9| 9) (<= 9 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {116507#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= main_~n_stones2~0 9) (<= 9 main_~n_stones2~0))} is VALID [2022-04-27 22:31:05,262 INFO L272 TraceCheckUtils]: 49: Hoare triple {116507#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9) (<= main_~n_stones2~0 9) (<= 9 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {116511#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:05,262 INFO L290 TraceCheckUtils]: 50: Hoare triple {116511#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {116515#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:05,263 INFO L290 TraceCheckUtils]: 51: Hoare triple {116515#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {116282#false} is VALID [2022-04-27 22:31:05,263 INFO L290 TraceCheckUtils]: 52: Hoare triple {116282#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116282#false} is VALID [2022-04-27 22:31:05,263 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 0 proven. 92 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:31:05,263 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:31:05,761 INFO L290 TraceCheckUtils]: 52: Hoare triple {116282#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116282#false} is VALID [2022-04-27 22:31:05,762 INFO L290 TraceCheckUtils]: 51: Hoare triple {116515#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {116282#false} is VALID [2022-04-27 22:31:05,762 INFO L290 TraceCheckUtils]: 50: Hoare triple {116511#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {116515#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:05,763 INFO L272 TraceCheckUtils]: 49: Hoare triple {116327#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {116511#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:05,763 INFO L290 TraceCheckUtils]: 48: Hoare triple {116326#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {116327#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:05,764 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {116326#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:05,764 INFO L290 TraceCheckUtils]: 46: Hoare triple {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:05,765 INFO L290 TraceCheckUtils]: 45: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {116356#(and (<= 9 |student_version_#res|) (<= |student_version_#res| 9))} is VALID [2022-04-27 22:31:05,765 INFO L290 TraceCheckUtils]: 44: Hoare triple {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:05,765 INFO L290 TraceCheckUtils]: 43: Hoare triple {116354#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116355#(and (<= 9 student_version_~y~1) (<= student_version_~y~1 9))} is VALID [2022-04-27 22:31:05,766 INFO L290 TraceCheckUtils]: 42: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {116354#(and (<= (+ student_version_~j~1 student_version_~y~1) 9) (<= 9 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:05,766 INFO L290 TraceCheckUtils]: 41: Hoare triple {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:05,767 INFO L290 TraceCheckUtils]: 40: Hoare triple {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116353#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:31:05,767 INFO L290 TraceCheckUtils]: 39: Hoare triple {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116352#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:31:05,767 INFO L290 TraceCheckUtils]: 38: Hoare triple {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116351#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:05,768 INFO L290 TraceCheckUtils]: 37: Hoare triple {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116350#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:05,768 INFO L290 TraceCheckUtils]: 36: Hoare triple {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116349#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:05,769 INFO L290 TraceCheckUtils]: 35: Hoare triple {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116348#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:05,769 INFO L290 TraceCheckUtils]: 34: Hoare triple {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116347#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:05,770 INFO L290 TraceCheckUtils]: 33: Hoare triple {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116346#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:05,770 INFO L290 TraceCheckUtils]: 32: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {116345#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:05,771 INFO L290 TraceCheckUtils]: 31: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:05,771 INFO L290 TraceCheckUtils]: 30: Hoare triple {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:05,771 INFO L290 TraceCheckUtils]: 29: Hoare triple {116281#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {116344#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:05,771 INFO L272 TraceCheckUtils]: 28: Hoare triple {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:05,772 INFO L290 TraceCheckUtils]: 27: Hoare triple {116305#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {116306#(and (<= 9 main_~n_stones1~0) (<= main_~n_stones1~0 9))} is VALID [2022-04-27 22:31:05,772 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} {116281#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {116305#(and (<= |main_#t~ret8| 9) (<= 9 |main_#t~ret8|))} is VALID [2022-04-27 22:31:05,773 INFO L290 TraceCheckUtils]: 25: Hoare triple {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:05,773 INFO L290 TraceCheckUtils]: 24: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {116343#(and (<= 9 |correct_version_#res|) (<= |correct_version_#res| 9))} is VALID [2022-04-27 22:31:05,773 INFO L290 TraceCheckUtils]: 23: Hoare triple {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:05,774 INFO L290 TraceCheckUtils]: 22: Hoare triple {116341#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116342#(and (<= correct_version_~y~0 9) (<= 9 correct_version_~y~0))} is VALID [2022-04-27 22:31:05,774 INFO L290 TraceCheckUtils]: 21: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {116341#(and (<= 9 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 9))} is VALID [2022-04-27 22:31:05,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,775 INFO L290 TraceCheckUtils]: 19: Hoare triple {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116340#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,775 INFO L290 TraceCheckUtils]: 18: Hoare triple {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116339#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:31:05,776 INFO L290 TraceCheckUtils]: 17: Hoare triple {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116338#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:05,776 INFO L290 TraceCheckUtils]: 16: Hoare triple {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116337#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,777 INFO L290 TraceCheckUtils]: 15: Hoare triple {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116336#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,777 INFO L290 TraceCheckUtils]: 14: Hoare triple {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116335#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:05,778 INFO L290 TraceCheckUtils]: 13: Hoare triple {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116334#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:05,778 INFO L290 TraceCheckUtils]: 12: Hoare triple {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116333#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:05,779 INFO L290 TraceCheckUtils]: 11: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {116332#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:05,779 INFO L290 TraceCheckUtils]: 10: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,779 INFO L290 TraceCheckUtils]: 9: Hoare triple {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,780 INFO L290 TraceCheckUtils]: 8: Hoare triple {116281#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {116331#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:05,780 INFO L272 TraceCheckUtils]: 7: Hoare triple {116281#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L290 TraceCheckUtils]: 6: Hoare triple {116281#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L290 TraceCheckUtils]: 5: Hoare triple {116281#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L272 TraceCheckUtils]: 4: Hoare triple {116281#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {116281#true} {116281#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {116281#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {116281#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L272 TraceCheckUtils]: 0: Hoare triple {116281#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {116281#true} is VALID [2022-04-27 22:31:05,780 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 0 proven. 92 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:31:05,781 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [57443499] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:31:05,781 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:31:05,781 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [35, 34, 34] total 41 [2022-04-27 22:31:05,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [118692212] [2022-04-27 22:31:05,781 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:31:05,781 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:31:05,781 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:31:05,781 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:05,820 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-27 22:31:05,820 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-04-27 22:31:05,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:31:05,821 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-04-27 22:31:05,821 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=89, Invalid=1551, Unknown=0, NotChecked=0, Total=1640 [2022-04-27 22:31:05,821 INFO L87 Difference]: Start difference. First operand 618 states and 695 transitions. Second operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:17,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:17,249 INFO L93 Difference]: Finished difference Result 718 states and 808 transitions. [2022-04-27 22:31:17,249 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 36 states. [2022-04-27 22:31:17,249 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:31:17,249 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:31:17,249 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:17,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 206 transitions. [2022-04-27 22:31:17,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:17,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 206 transitions. [2022-04-27 22:31:17,261 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 206 transitions. [2022-04-27 22:31:17,462 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-27 22:31:17,489 INFO L225 Difference]: With dead ends: 718 [2022-04-27 22:31:17,489 INFO L226 Difference]: Without dead ends: 712 [2022-04-27 22:31:17,492 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 100 SyntacticMatches, 5 SemanticMatches, 72 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 733 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=253, Invalid=5149, Unknown=0, NotChecked=0, Total=5402 [2022-04-27 22:31:17,492 INFO L413 NwaCegarLoop]: 106 mSDtfsCounter, 230 mSDsluCounter, 162 mSDsCounter, 0 mSdLazyCounter, 5210 mSolverCounterSat, 52 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 236 SdHoareTripleChecker+Valid, 268 SdHoareTripleChecker+Invalid, 5262 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 52 IncrementalHoareTripleChecker+Valid, 5210 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:31:17,492 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [236 Valid, 268 Invalid, 5262 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [52 Valid, 5210 Invalid, 0 Unknown, 0 Unchecked, 3.1s Time] [2022-04-27 22:31:17,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 712 states. [2022-04-27 22:31:21,044 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 712 to 634. [2022-04-27 22:31:21,044 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:31:21,045 INFO L82 GeneralOperation]: Start isEquivalent. First operand 712 states. Second operand has 634 states, 550 states have (on average 1.1454545454545455) internal successors, (630), 600 states have internal predecessors, (630), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (54), 28 states have call predecessors, (54), 28 states have call successors, (54) [2022-04-27 22:31:21,045 INFO L74 IsIncluded]: Start isIncluded. First operand 712 states. Second operand has 634 states, 550 states have (on average 1.1454545454545455) internal successors, (630), 600 states have internal predecessors, (630), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (54), 28 states have call predecessors, (54), 28 states have call successors, (54) [2022-04-27 22:31:21,046 INFO L87 Difference]: Start difference. First operand 712 states. Second operand has 634 states, 550 states have (on average 1.1454545454545455) internal successors, (630), 600 states have internal predecessors, (630), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (54), 28 states have call predecessors, (54), 28 states have call successors, (54) [2022-04-27 22:31:21,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:21,071 INFO L93 Difference]: Finished difference Result 712 states and 802 transitions. [2022-04-27 22:31:21,071 INFO L276 IsEmpty]: Start isEmpty. Operand 712 states and 802 transitions. [2022-04-27 22:31:21,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:21,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:21,074 INFO L74 IsIncluded]: Start isIncluded. First operand has 634 states, 550 states have (on average 1.1454545454545455) internal successors, (630), 600 states have internal predecessors, (630), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (54), 28 states have call predecessors, (54), 28 states have call successors, (54) Second operand 712 states. [2022-04-27 22:31:21,075 INFO L87 Difference]: Start difference. First operand has 634 states, 550 states have (on average 1.1454545454545455) internal successors, (630), 600 states have internal predecessors, (630), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (54), 28 states have call predecessors, (54), 28 states have call successors, (54) Second operand 712 states. [2022-04-27 22:31:21,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:21,096 INFO L93 Difference]: Finished difference Result 712 states and 802 transitions. [2022-04-27 22:31:21,096 INFO L276 IsEmpty]: Start isEmpty. Operand 712 states and 802 transitions. [2022-04-27 22:31:21,099 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:21,100 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:21,100 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:31:21,100 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:31:21,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 634 states, 550 states have (on average 1.1454545454545455) internal successors, (630), 600 states have internal predecessors, (630), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (54), 28 states have call predecessors, (54), 28 states have call successors, (54) [2022-04-27 22:31:21,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 634 states to 634 states and 714 transitions. [2022-04-27 22:31:21,140 INFO L78 Accepts]: Start accepts. Automaton has 634 states and 714 transitions. Word has length 53 [2022-04-27 22:31:21,140 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:31:21,140 INFO L495 AbstractCegarLoop]: Abstraction has 634 states and 714 transitions. [2022-04-27 22:31:21,140 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:21,140 INFO L276 IsEmpty]: Start isEmpty. Operand 634 states and 714 transitions. [2022-04-27 22:31:21,143 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-27 22:31:21,144 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:31:21,144 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:31:21,160 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (62)] Forceful destruction successful, exit code 0 [2022-04-27 22:31:21,356 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable70,62 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:21,356 INFO L420 AbstractCegarLoop]: === Iteration 72 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:31:21,357 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:31:21,357 INFO L85 PathProgramCache]: Analyzing trace with hash -1647072793, now seen corresponding path program 62 times [2022-04-27 22:31:21,357 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:31:21,357 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1344581436] [2022-04-27 22:31:21,357 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:31:21,357 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:31:21,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:21,449 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:31:21,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:21,451 INFO L290 TraceCheckUtils]: 0: Hoare triple {120193#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {120144#true} is VALID [2022-04-27 22:31:21,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {120144#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:21,451 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {120144#true} {120144#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:21,452 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:31:21,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:21,574 INFO L290 TraceCheckUtils]: 0: Hoare triple {120144#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,575 INFO L290 TraceCheckUtils]: 1: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,575 INFO L290 TraceCheckUtils]: 2: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,575 INFO L290 TraceCheckUtils]: 3: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,576 INFO L290 TraceCheckUtils]: 4: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:21,576 INFO L290 TraceCheckUtils]: 5: Hoare triple {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:21,577 INFO L290 TraceCheckUtils]: 6: Hoare triple {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:21,577 INFO L290 TraceCheckUtils]: 7: Hoare triple {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:21,577 INFO L290 TraceCheckUtils]: 8: Hoare triple {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,578 INFO L290 TraceCheckUtils]: 10: Hoare triple {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:21,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:21,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120202#(and (<= 14 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 14))} is VALID [2022-04-27 22:31:21,579 INFO L290 TraceCheckUtils]: 13: Hoare triple {120202#(and (<= 14 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 14))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120203#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 14) (<= 14 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:31:21,580 INFO L290 TraceCheckUtils]: 14: Hoare triple {120203#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 14) (<= 14 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:21,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:21,580 INFO L290 TraceCheckUtils]: 16: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:21,581 INFO L290 TraceCheckUtils]: 17: Hoare triple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:21,582 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} {120144#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {120168#(and (<= |main_#t~ret8| 14) (<= 14 |main_#t~ret8|))} is VALID [2022-04-27 22:31:21,582 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:31:21,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:21,773 INFO L290 TraceCheckUtils]: 0: Hoare triple {120144#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,774 INFO L290 TraceCheckUtils]: 1: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,774 INFO L290 TraceCheckUtils]: 2: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,774 INFO L290 TraceCheckUtils]: 3: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,775 INFO L290 TraceCheckUtils]: 4: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:21,775 INFO L290 TraceCheckUtils]: 5: Hoare triple {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:21,775 INFO L290 TraceCheckUtils]: 6: Hoare triple {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:21,776 INFO L290 TraceCheckUtils]: 7: Hoare triple {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:21,776 INFO L290 TraceCheckUtils]: 8: Hoare triple {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:21,777 INFO L290 TraceCheckUtils]: 9: Hoare triple {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:21,777 INFO L290 TraceCheckUtils]: 10: Hoare triple {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:21,777 INFO L290 TraceCheckUtils]: 11: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:21,777 INFO L290 TraceCheckUtils]: 12: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120214#(and (<= 14 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 14))} is VALID [2022-04-27 22:31:21,778 INFO L290 TraceCheckUtils]: 13: Hoare triple {120214#(and (<= 14 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 14))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120215#(and (<= 14 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 14))} is VALID [2022-04-27 22:31:21,778 INFO L290 TraceCheckUtils]: 14: Hoare triple {120215#(and (<= 14 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 14))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:21,778 INFO L290 TraceCheckUtils]: 15: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:21,779 INFO L290 TraceCheckUtils]: 16: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:21,779 INFO L290 TraceCheckUtils]: 17: Hoare triple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:21,779 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {120189#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:21,780 INFO L272 TraceCheckUtils]: 0: Hoare triple {120144#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120193#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:31:21,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {120193#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {120144#true} is VALID [2022-04-27 22:31:21,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {120144#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:21,780 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {120144#true} {120144#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:21,790 INFO L272 TraceCheckUtils]: 4: Hoare triple {120144#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:21,790 INFO L290 TraceCheckUtils]: 5: Hoare triple {120144#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:21,791 INFO L290 TraceCheckUtils]: 6: Hoare triple {120144#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:21,791 INFO L272 TraceCheckUtils]: 7: Hoare triple {120144#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:21,791 INFO L290 TraceCheckUtils]: 8: Hoare triple {120144#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,792 INFO L290 TraceCheckUtils]: 9: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,792 INFO L290 TraceCheckUtils]: 10: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,792 INFO L290 TraceCheckUtils]: 11: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,793 INFO L290 TraceCheckUtils]: 12: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:21,793 INFO L290 TraceCheckUtils]: 13: Hoare triple {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:21,794 INFO L290 TraceCheckUtils]: 14: Hoare triple {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:21,794 INFO L290 TraceCheckUtils]: 15: Hoare triple {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:21,794 INFO L290 TraceCheckUtils]: 16: Hoare triple {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,795 INFO L290 TraceCheckUtils]: 17: Hoare triple {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:21,795 INFO L290 TraceCheckUtils]: 18: Hoare triple {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:21,795 INFO L290 TraceCheckUtils]: 19: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:21,796 INFO L290 TraceCheckUtils]: 20: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120202#(and (<= 14 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 14))} is VALID [2022-04-27 22:31:21,796 INFO L290 TraceCheckUtils]: 21: Hoare triple {120202#(and (<= 14 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 14))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120203#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 14) (<= 14 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:31:21,796 INFO L290 TraceCheckUtils]: 22: Hoare triple {120203#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 14) (<= 14 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:21,797 INFO L290 TraceCheckUtils]: 23: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:21,797 INFO L290 TraceCheckUtils]: 24: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:21,797 INFO L290 TraceCheckUtils]: 25: Hoare triple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:21,797 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} {120144#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {120168#(and (<= |main_#t~ret8| 14) (<= 14 |main_#t~ret8|))} is VALID [2022-04-27 22:31:21,798 INFO L290 TraceCheckUtils]: 27: Hoare triple {120168#(and (<= |main_#t~ret8| 14) (<= 14 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} is VALID [2022-04-27 22:31:21,798 INFO L272 TraceCheckUtils]: 28: Hoare triple {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:21,798 INFO L290 TraceCheckUtils]: 29: Hoare triple {120144#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,798 INFO L290 TraceCheckUtils]: 30: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,799 INFO L290 TraceCheckUtils]: 31: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,799 INFO L290 TraceCheckUtils]: 32: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:21,799 INFO L290 TraceCheckUtils]: 33: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:21,800 INFO L290 TraceCheckUtils]: 34: Hoare triple {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:21,800 INFO L290 TraceCheckUtils]: 35: Hoare triple {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:21,800 INFO L290 TraceCheckUtils]: 36: Hoare triple {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:21,801 INFO L290 TraceCheckUtils]: 37: Hoare triple {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:21,801 INFO L290 TraceCheckUtils]: 38: Hoare triple {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:21,801 INFO L290 TraceCheckUtils]: 39: Hoare triple {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:21,802 INFO L290 TraceCheckUtils]: 40: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:21,802 INFO L290 TraceCheckUtils]: 41: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120214#(and (<= 14 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 14))} is VALID [2022-04-27 22:31:21,802 INFO L290 TraceCheckUtils]: 42: Hoare triple {120214#(and (<= 14 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 14))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120215#(and (<= 14 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 14))} is VALID [2022-04-27 22:31:21,803 INFO L290 TraceCheckUtils]: 43: Hoare triple {120215#(and (<= 14 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 14))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:21,803 INFO L290 TraceCheckUtils]: 44: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:21,803 INFO L290 TraceCheckUtils]: 45: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:21,803 INFO L290 TraceCheckUtils]: 46: Hoare triple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:21,804 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {120189#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:21,804 INFO L290 TraceCheckUtils]: 48: Hoare triple {120189#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {120190#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:21,805 INFO L272 TraceCheckUtils]: 49: Hoare triple {120190#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {120191#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:31:21,805 INFO L290 TraceCheckUtils]: 50: Hoare triple {120191#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {120192#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:31:21,805 INFO L290 TraceCheckUtils]: 51: Hoare triple {120192#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {120145#false} is VALID [2022-04-27 22:31:21,805 INFO L290 TraceCheckUtils]: 52: Hoare triple {120145#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120145#false} is VALID [2022-04-27 22:31:21,805 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 62 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:31:21,806 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:31:21,806 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1344581436] [2022-04-27 22:31:21,806 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1344581436] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:31:21,806 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1074801609] [2022-04-27 22:31:21,806 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:31:21,806 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:21,806 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:31:21,807 INFO L229 MonitoredProcess]: Starting monitored process 63 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:31:21,808 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (63)] Waiting until timeout for monitored process [2022-04-27 22:31:21,893 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:31:21,894 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:31:21,895 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 59 conjunts are in the unsatisfiable core [2022-04-27 22:31:21,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:21,902 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:31:22,368 INFO L272 TraceCheckUtils]: 0: Hoare triple {120144#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,368 INFO L290 TraceCheckUtils]: 1: Hoare triple {120144#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {120144#true} is VALID [2022-04-27 22:31:22,368 INFO L290 TraceCheckUtils]: 2: Hoare triple {120144#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,368 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {120144#true} {120144#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,368 INFO L272 TraceCheckUtils]: 4: Hoare triple {120144#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {120144#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:22,369 INFO L290 TraceCheckUtils]: 6: Hoare triple {120144#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,369 INFO L272 TraceCheckUtils]: 7: Hoare triple {120144#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:22,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {120144#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,369 INFO L290 TraceCheckUtils]: 10: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,370 INFO L290 TraceCheckUtils]: 11: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,370 INFO L290 TraceCheckUtils]: 12: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:22,370 INFO L290 TraceCheckUtils]: 13: Hoare triple {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:22,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:22,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:22,372 INFO L290 TraceCheckUtils]: 16: Hoare triple {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,372 INFO L290 TraceCheckUtils]: 18: Hoare triple {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:22,373 INFO L290 TraceCheckUtils]: 19: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:22,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120281#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:31:22,373 INFO L290 TraceCheckUtils]: 21: Hoare triple {120281#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120285#(and (= correct_version_~j~0 correct_version_~y~0) (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:22,374 INFO L290 TraceCheckUtils]: 22: Hoare triple {120285#(and (= correct_version_~j~0 correct_version_~y~0) (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:22,374 INFO L290 TraceCheckUtils]: 23: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:22,374 INFO L290 TraceCheckUtils]: 24: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:22,374 INFO L290 TraceCheckUtils]: 25: Hoare triple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:22,375 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} {120144#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {120168#(and (<= |main_#t~ret8| 14) (<= 14 |main_#t~ret8|))} is VALID [2022-04-27 22:31:22,375 INFO L290 TraceCheckUtils]: 27: Hoare triple {120168#(and (<= |main_#t~ret8| 14) (<= 14 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} is VALID [2022-04-27 22:31:22,375 INFO L272 TraceCheckUtils]: 28: Hoare triple {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:22,375 INFO L290 TraceCheckUtils]: 29: Hoare triple {120144#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,376 INFO L290 TraceCheckUtils]: 30: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,376 INFO L290 TraceCheckUtils]: 31: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,376 INFO L290 TraceCheckUtils]: 32: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,377 INFO L290 TraceCheckUtils]: 33: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:22,377 INFO L290 TraceCheckUtils]: 34: Hoare triple {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:22,377 INFO L290 TraceCheckUtils]: 35: Hoare triple {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:22,378 INFO L290 TraceCheckUtils]: 36: Hoare triple {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:22,378 INFO L290 TraceCheckUtils]: 37: Hoare triple {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:22,378 INFO L290 TraceCheckUtils]: 38: Hoare triple {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:22,379 INFO L290 TraceCheckUtils]: 39: Hoare triple {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:22,379 INFO L290 TraceCheckUtils]: 40: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:22,379 INFO L290 TraceCheckUtils]: 41: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120346#(and (= student_version_~y~1 0) (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:22,380 INFO L290 TraceCheckUtils]: 42: Hoare triple {120346#(and (= student_version_~y~1 0) (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120350#(and (<= student_version_~j~1 7) (= student_version_~j~1 student_version_~y~1) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:22,380 INFO L290 TraceCheckUtils]: 43: Hoare triple {120350#(and (<= student_version_~j~1 7) (= student_version_~j~1 student_version_~y~1) (<= 7 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:22,380 INFO L290 TraceCheckUtils]: 44: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:22,380 INFO L290 TraceCheckUtils]: 45: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:22,381 INFO L290 TraceCheckUtils]: 46: Hoare triple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:22,381 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {120366#(and (<= 14 main_~n_stones1~0) (<= 14 |main_#t~ret9|) (<= main_~n_stones1~0 14) (<= |main_#t~ret9| 14))} is VALID [2022-04-27 22:31:22,381 INFO L290 TraceCheckUtils]: 48: Hoare triple {120366#(and (<= 14 main_~n_stones1~0) (<= 14 |main_#t~ret9|) (<= main_~n_stones1~0 14) (<= |main_#t~ret9| 14))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {120370#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones2~0 14) (<= 14 main_~n_stones2~0) (<= main_~n_stones1~0 14))} is VALID [2022-04-27 22:31:22,382 INFO L272 TraceCheckUtils]: 49: Hoare triple {120370#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones2~0 14) (<= 14 main_~n_stones2~0) (<= main_~n_stones1~0 14))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {120374#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:22,382 INFO L290 TraceCheckUtils]: 50: Hoare triple {120374#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {120378#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:22,382 INFO L290 TraceCheckUtils]: 51: Hoare triple {120378#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {120145#false} is VALID [2022-04-27 22:31:22,382 INFO L290 TraceCheckUtils]: 52: Hoare triple {120145#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120145#false} is VALID [2022-04-27 22:31:22,383 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 62 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:31:22,383 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:31:22,704 INFO L290 TraceCheckUtils]: 52: Hoare triple {120145#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120145#false} is VALID [2022-04-27 22:31:22,705 INFO L290 TraceCheckUtils]: 51: Hoare triple {120378#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {120145#false} is VALID [2022-04-27 22:31:22,705 INFO L290 TraceCheckUtils]: 50: Hoare triple {120374#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {120378#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:22,705 INFO L272 TraceCheckUtils]: 49: Hoare triple {120190#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {120374#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:22,706 INFO L290 TraceCheckUtils]: 48: Hoare triple {120189#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {120190#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:22,706 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {120189#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:22,706 INFO L290 TraceCheckUtils]: 46: Hoare triple {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:22,707 INFO L290 TraceCheckUtils]: 45: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {120217#(and (<= 14 |student_version_#res|) (<= |student_version_#res| 14))} is VALID [2022-04-27 22:31:22,707 INFO L290 TraceCheckUtils]: 44: Hoare triple {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:22,707 INFO L290 TraceCheckUtils]: 43: Hoare triple {120215#(and (<= 14 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 14))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120216#(and (<= student_version_~y~1 14) (<= 14 student_version_~y~1))} is VALID [2022-04-27 22:31:22,708 INFO L290 TraceCheckUtils]: 42: Hoare triple {120214#(and (<= 14 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 14))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120215#(and (<= 14 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 14))} is VALID [2022-04-27 22:31:22,708 INFO L290 TraceCheckUtils]: 41: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {120214#(and (<= 14 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 14))} is VALID [2022-04-27 22:31:22,708 INFO L290 TraceCheckUtils]: 40: Hoare triple {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:22,709 INFO L290 TraceCheckUtils]: 39: Hoare triple {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120213#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:31:22,709 INFO L290 TraceCheckUtils]: 38: Hoare triple {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120212#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:31:22,709 INFO L290 TraceCheckUtils]: 37: Hoare triple {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120211#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:22,710 INFO L290 TraceCheckUtils]: 36: Hoare triple {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120210#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:22,710 INFO L290 TraceCheckUtils]: 35: Hoare triple {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120209#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:22,710 INFO L290 TraceCheckUtils]: 34: Hoare triple {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120208#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:22,711 INFO L290 TraceCheckUtils]: 33: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {120207#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:22,711 INFO L290 TraceCheckUtils]: 32: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,711 INFO L290 TraceCheckUtils]: 31: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,712 INFO L290 TraceCheckUtils]: 30: Hoare triple {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,712 INFO L290 TraceCheckUtils]: 29: Hoare triple {120144#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {120206#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:22,712 INFO L272 TraceCheckUtils]: 28: Hoare triple {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:22,712 INFO L290 TraceCheckUtils]: 27: Hoare triple {120168#(and (<= |main_#t~ret8| 14) (<= 14 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {120169#(and (<= 14 main_~n_stones1~0) (<= main_~n_stones1~0 14))} is VALID [2022-04-27 22:31:22,713 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} {120144#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {120168#(and (<= |main_#t~ret8| 14) (<= 14 |main_#t~ret8|))} is VALID [2022-04-27 22:31:22,713 INFO L290 TraceCheckUtils]: 25: Hoare triple {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:22,713 INFO L290 TraceCheckUtils]: 24: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {120205#(and (<= |correct_version_#res| 14) (<= 14 |correct_version_#res|))} is VALID [2022-04-27 22:31:22,713 INFO L290 TraceCheckUtils]: 23: Hoare triple {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:22,714 INFO L290 TraceCheckUtils]: 22: Hoare triple {120203#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 14) (<= 14 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120204#(and (<= correct_version_~y~0 14) (<= 14 correct_version_~y~0))} is VALID [2022-04-27 22:31:22,714 INFO L290 TraceCheckUtils]: 21: Hoare triple {120202#(and (<= 14 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 14))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120203#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 14) (<= 14 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:31:22,714 INFO L290 TraceCheckUtils]: 20: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {120202#(and (<= 14 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 14))} is VALID [2022-04-27 22:31:22,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:22,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120201#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:31:22,715 INFO L290 TraceCheckUtils]: 17: Hoare triple {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120200#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,716 INFO L290 TraceCheckUtils]: 16: Hoare triple {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120199#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,716 INFO L290 TraceCheckUtils]: 15: Hoare triple {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120198#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:22,716 INFO L290 TraceCheckUtils]: 14: Hoare triple {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120197#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:22,717 INFO L290 TraceCheckUtils]: 13: Hoare triple {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120196#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:22,717 INFO L290 TraceCheckUtils]: 12: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {120195#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:22,717 INFO L290 TraceCheckUtils]: 11: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,718 INFO L290 TraceCheckUtils]: 10: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,718 INFO L290 TraceCheckUtils]: 9: Hoare triple {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,718 INFO L290 TraceCheckUtils]: 8: Hoare triple {120144#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {120194#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:22,718 INFO L272 TraceCheckUtils]: 7: Hoare triple {120144#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:22,718 INFO L290 TraceCheckUtils]: 6: Hoare triple {120144#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {120144#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {120144#true} is VALID [2022-04-27 22:31:22,719 INFO L272 TraceCheckUtils]: 4: Hoare triple {120144#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,719 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {120144#true} {120144#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,719 INFO L290 TraceCheckUtils]: 2: Hoare triple {120144#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,719 INFO L290 TraceCheckUtils]: 1: Hoare triple {120144#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {120144#true} is VALID [2022-04-27 22:31:22,719 INFO L272 TraceCheckUtils]: 0: Hoare triple {120144#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {120144#true} is VALID [2022-04-27 22:31:22,719 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 62 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:31:22,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1074801609] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:31:22,719 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:31:22,719 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [33, 32, 32] total 41 [2022-04-27 22:31:22,719 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1216281172] [2022-04-27 22:31:22,719 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:31:22,720 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:31:22,720 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:31:22,720 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:22,746 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:31:22,746 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-04-27 22:31:22,746 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:31:22,747 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-04-27 22:31:22,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=1547, Unknown=0, NotChecked=0, Total=1640 [2022-04-27 22:31:22,747 INFO L87 Difference]: Start difference. First operand 634 states and 714 transitions. Second operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:31,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:31,143 INFO L93 Difference]: Finished difference Result 640 states and 719 transitions. [2022-04-27 22:31:31,143 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2022-04-27 22:31:31,143 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:31:31,143 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:31:31,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:31,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 172 transitions. [2022-04-27 22:31:31,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:31,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 172 transitions. [2022-04-27 22:31:31,148 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 172 transitions. [2022-04-27 22:31:31,241 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-27 22:31:31,261 INFO L225 Difference]: With dead ends: 640 [2022-04-27 22:31:31,261 INFO L226 Difference]: Without dead ends: 618 [2022-04-27 22:31:31,265 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 94 SyntacticMatches, 9 SemanticMatches, 70 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 752 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=255, Invalid=4857, Unknown=0, NotChecked=0, Total=5112 [2022-04-27 22:31:31,265 INFO L413 NwaCegarLoop]: 94 mSDtfsCounter, 162 mSDsluCounter, 167 mSDsCounter, 0 mSdLazyCounter, 4680 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 166 SdHoareTripleChecker+Valid, 261 SdHoareTripleChecker+Invalid, 4716 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 4680 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:31:31,265 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [166 Valid, 261 Invalid, 4716 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 4680 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-04-27 22:31:31,266 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 618 states. [2022-04-27 22:31:34,708 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 618 to 618. [2022-04-27 22:31:34,708 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:31:34,709 INFO L82 GeneralOperation]: Start isEquivalent. First operand 618 states. Second operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (52), 27 states have call predecessors, (52), 27 states have call successors, (52) [2022-04-27 22:31:34,709 INFO L74 IsIncluded]: Start isIncluded. First operand 618 states. Second operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (52), 27 states have call predecessors, (52), 27 states have call successors, (52) [2022-04-27 22:31:34,709 INFO L87 Difference]: Start difference. First operand 618 states. Second operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (52), 27 states have call predecessors, (52), 27 states have call successors, (52) [2022-04-27 22:31:34,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:34,723 INFO L93 Difference]: Finished difference Result 618 states and 696 transitions. [2022-04-27 22:31:34,724 INFO L276 IsEmpty]: Start isEmpty. Operand 618 states and 696 transitions. [2022-04-27 22:31:34,726 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:34,726 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:34,727 INFO L74 IsIncluded]: Start isIncluded. First operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (52), 27 states have call predecessors, (52), 27 states have call successors, (52) Second operand 618 states. [2022-04-27 22:31:34,727 INFO L87 Difference]: Start difference. First operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (52), 27 states have call predecessors, (52), 27 states have call successors, (52) Second operand 618 states. [2022-04-27 22:31:34,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:34,741 INFO L93 Difference]: Finished difference Result 618 states and 696 transitions. [2022-04-27 22:31:34,741 INFO L276 IsEmpty]: Start isEmpty. Operand 618 states and 696 transitions. [2022-04-27 22:31:34,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:34,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:34,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:31:34,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:31:34,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 618 states, 537 states have (on average 1.1452513966480447) internal successors, (615), 585 states have internal predecessors, (615), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (52), 27 states have call predecessors, (52), 27 states have call successors, (52) [2022-04-27 22:31:34,762 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 618 states to 618 states and 696 transitions. [2022-04-27 22:31:34,762 INFO L78 Accepts]: Start accepts. Automaton has 618 states and 696 transitions. Word has length 53 [2022-04-27 22:31:34,762 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:31:34,762 INFO L495 AbstractCegarLoop]: Abstraction has 618 states and 696 transitions. [2022-04-27 22:31:34,762 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:34,762 INFO L276 IsEmpty]: Start isEmpty. Operand 618 states and 696 transitions. [2022-04-27 22:31:34,766 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-27 22:31:34,766 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:31:34,766 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 3, 3, 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] [2022-04-27 22:31:34,783 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (63)] Forceful destruction successful, exit code 0 [2022-04-27 22:31:34,977 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable71,63 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:34,977 INFO L420 AbstractCegarLoop]: === Iteration 73 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:31:34,977 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:31:34,977 INFO L85 PathProgramCache]: Analyzing trace with hash -1800218814, now seen corresponding path program 63 times [2022-04-27 22:31:34,977 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:31:34,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1171587561] [2022-04-27 22:31:34,978 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:31:34,978 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:31:34,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:35,034 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:31:35,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:35,036 INFO L290 TraceCheckUtils]: 0: Hoare triple {123726#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {123677#true} is VALID [2022-04-27 22:31:35,036 INFO L290 TraceCheckUtils]: 1: Hoare triple {123677#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,036 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {123677#true} {123677#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,036 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:31:35,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:35,151 INFO L290 TraceCheckUtils]: 0: Hoare triple {123677#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,151 INFO L290 TraceCheckUtils]: 1: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,152 INFO L290 TraceCheckUtils]: 2: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,152 INFO L290 TraceCheckUtils]: 3: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,152 INFO L290 TraceCheckUtils]: 4: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,152 INFO L290 TraceCheckUtils]: 5: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:35,153 INFO L290 TraceCheckUtils]: 6: Hoare triple {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:35,153 INFO L290 TraceCheckUtils]: 7: Hoare triple {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:35,153 INFO L290 TraceCheckUtils]: 8: Hoare triple {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:35,154 INFO L290 TraceCheckUtils]: 9: Hoare triple {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,154 INFO L290 TraceCheckUtils]: 10: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,154 INFO L290 TraceCheckUtils]: 11: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123733#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 15))} is VALID [2022-04-27 22:31:35,155 INFO L290 TraceCheckUtils]: 12: Hoare triple {123733#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 15))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123734#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 15))} is VALID [2022-04-27 22:31:35,155 INFO L290 TraceCheckUtils]: 13: Hoare triple {123734#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 15))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123735#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 15) (<= 15 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:31:35,156 INFO L290 TraceCheckUtils]: 14: Hoare triple {123735#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 15) (<= 15 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:35,156 INFO L290 TraceCheckUtils]: 15: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:35,156 INFO L290 TraceCheckUtils]: 16: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:35,156 INFO L290 TraceCheckUtils]: 17: Hoare triple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:35,157 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} {123677#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {123701#(and (<= 15 |main_#t~ret8|) (<= |main_#t~ret8| 15))} is VALID [2022-04-27 22:31:35,157 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:31:35,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:35,322 INFO L290 TraceCheckUtils]: 0: Hoare triple {123677#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,323 INFO L290 TraceCheckUtils]: 1: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,323 INFO L290 TraceCheckUtils]: 2: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,323 INFO L290 TraceCheckUtils]: 3: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,324 INFO L290 TraceCheckUtils]: 4: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,324 INFO L290 TraceCheckUtils]: 5: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:35,324 INFO L290 TraceCheckUtils]: 6: Hoare triple {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:35,325 INFO L290 TraceCheckUtils]: 7: Hoare triple {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:35,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:35,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,326 INFO L290 TraceCheckUtils]: 10: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,326 INFO L290 TraceCheckUtils]: 11: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123744#(and (<= 15 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 15))} is VALID [2022-04-27 22:31:35,326 INFO L290 TraceCheckUtils]: 12: Hoare triple {123744#(and (<= 15 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 15))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123745#(and (<= 15 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 15))} is VALID [2022-04-27 22:31:35,327 INFO L290 TraceCheckUtils]: 13: Hoare triple {123745#(and (<= 15 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 15))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123746#(and (<= (+ student_version_~j~1 student_version_~y~1) 15) (<= 15 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:35,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {123746#(and (<= (+ student_version_~j~1 student_version_~y~1) 15) (<= 15 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:35,327 INFO L290 TraceCheckUtils]: 15: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:35,328 INFO L290 TraceCheckUtils]: 16: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:35,328 INFO L290 TraceCheckUtils]: 17: Hoare triple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:35,329 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {123722#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:35,329 INFO L272 TraceCheckUtils]: 0: Hoare triple {123677#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123726#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:31:35,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {123726#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {123677#true} is VALID [2022-04-27 22:31:35,329 INFO L290 TraceCheckUtils]: 2: Hoare triple {123677#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,329 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {123677#true} {123677#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,329 INFO L272 TraceCheckUtils]: 4: Hoare triple {123677#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,329 INFO L290 TraceCheckUtils]: 5: Hoare triple {123677#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:35,329 INFO L290 TraceCheckUtils]: 6: Hoare triple {123677#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,329 INFO L272 TraceCheckUtils]: 7: Hoare triple {123677#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:35,330 INFO L290 TraceCheckUtils]: 8: Hoare triple {123677#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,330 INFO L290 TraceCheckUtils]: 9: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,330 INFO L290 TraceCheckUtils]: 10: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,330 INFO L290 TraceCheckUtils]: 11: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,331 INFO L290 TraceCheckUtils]: 12: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,331 INFO L290 TraceCheckUtils]: 13: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:35,331 INFO L290 TraceCheckUtils]: 14: Hoare triple {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:35,332 INFO L290 TraceCheckUtils]: 15: Hoare triple {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:35,332 INFO L290 TraceCheckUtils]: 16: Hoare triple {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:35,333 INFO L290 TraceCheckUtils]: 17: Hoare triple {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,333 INFO L290 TraceCheckUtils]: 18: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,333 INFO L290 TraceCheckUtils]: 19: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123733#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 15))} is VALID [2022-04-27 22:31:35,333 INFO L290 TraceCheckUtils]: 20: Hoare triple {123733#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 15))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123734#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 15))} is VALID [2022-04-27 22:31:35,334 INFO L290 TraceCheckUtils]: 21: Hoare triple {123734#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 15))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123735#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 15) (<= 15 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:31:35,334 INFO L290 TraceCheckUtils]: 22: Hoare triple {123735#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 15) (<= 15 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:35,334 INFO L290 TraceCheckUtils]: 23: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:35,335 INFO L290 TraceCheckUtils]: 24: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:35,335 INFO L290 TraceCheckUtils]: 25: Hoare triple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:35,335 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} {123677#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {123701#(and (<= 15 |main_#t~ret8|) (<= |main_#t~ret8| 15))} is VALID [2022-04-27 22:31:35,336 INFO L290 TraceCheckUtils]: 27: Hoare triple {123701#(and (<= 15 |main_#t~ret8|) (<= |main_#t~ret8| 15))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} is VALID [2022-04-27 22:31:35,336 INFO L272 TraceCheckUtils]: 28: Hoare triple {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:35,336 INFO L290 TraceCheckUtils]: 29: Hoare triple {123677#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,336 INFO L290 TraceCheckUtils]: 30: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,337 INFO L290 TraceCheckUtils]: 31: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,337 INFO L290 TraceCheckUtils]: 32: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,337 INFO L290 TraceCheckUtils]: 33: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,337 INFO L290 TraceCheckUtils]: 34: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:35,338 INFO L290 TraceCheckUtils]: 35: Hoare triple {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:35,338 INFO L290 TraceCheckUtils]: 36: Hoare triple {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:35,339 INFO L290 TraceCheckUtils]: 37: Hoare triple {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:35,339 INFO L290 TraceCheckUtils]: 38: Hoare triple {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,339 INFO L290 TraceCheckUtils]: 39: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,339 INFO L290 TraceCheckUtils]: 40: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123744#(and (<= 15 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 15))} is VALID [2022-04-27 22:31:35,340 INFO L290 TraceCheckUtils]: 41: Hoare triple {123744#(and (<= 15 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 15))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123745#(and (<= 15 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 15))} is VALID [2022-04-27 22:31:35,340 INFO L290 TraceCheckUtils]: 42: Hoare triple {123745#(and (<= 15 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 15))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123746#(and (<= (+ student_version_~j~1 student_version_~y~1) 15) (<= 15 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:35,341 INFO L290 TraceCheckUtils]: 43: Hoare triple {123746#(and (<= (+ student_version_~j~1 student_version_~y~1) 15) (<= 15 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:35,341 INFO L290 TraceCheckUtils]: 44: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:35,341 INFO L290 TraceCheckUtils]: 45: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:35,341 INFO L290 TraceCheckUtils]: 46: Hoare triple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:35,342 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {123722#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:35,342 INFO L290 TraceCheckUtils]: 48: Hoare triple {123722#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {123723#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:35,343 INFO L272 TraceCheckUtils]: 49: Hoare triple {123723#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {123724#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:31:35,343 INFO L290 TraceCheckUtils]: 50: Hoare triple {123724#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {123725#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:31:35,343 INFO L290 TraceCheckUtils]: 51: Hoare triple {123725#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {123678#false} is VALID [2022-04-27 22:31:35,343 INFO L290 TraceCheckUtils]: 52: Hoare triple {123678#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123678#false} is VALID [2022-04-27 22:31:35,343 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 42 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:31:35,344 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:31:35,344 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1171587561] [2022-04-27 22:31:35,344 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1171587561] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:31:35,344 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1409682619] [2022-04-27 22:31:35,344 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:31:35,344 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:35,344 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:31:35,345 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:31:35,346 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (64)] Waiting until timeout for monitored process [2022-04-27 22:31:35,441 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 22:31:35,442 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:31:35,443 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-27 22:31:35,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:35,450 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:31:35,959 INFO L272 TraceCheckUtils]: 0: Hoare triple {123677#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L290 TraceCheckUtils]: 1: Hoare triple {123677#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L290 TraceCheckUtils]: 2: Hoare triple {123677#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {123677#true} {123677#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L272 TraceCheckUtils]: 4: Hoare triple {123677#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L290 TraceCheckUtils]: 5: Hoare triple {123677#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L290 TraceCheckUtils]: 6: Hoare triple {123677#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L272 TraceCheckUtils]: 7: Hoare triple {123677#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:35,960 INFO L290 TraceCheckUtils]: 8: Hoare triple {123677#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,961 INFO L290 TraceCheckUtils]: 9: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,961 INFO L290 TraceCheckUtils]: 10: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,961 INFO L290 TraceCheckUtils]: 11: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,961 INFO L290 TraceCheckUtils]: 12: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,962 INFO L290 TraceCheckUtils]: 13: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:35,962 INFO L290 TraceCheckUtils]: 14: Hoare triple {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:35,962 INFO L290 TraceCheckUtils]: 15: Hoare triple {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:35,963 INFO L290 TraceCheckUtils]: 16: Hoare triple {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:35,963 INFO L290 TraceCheckUtils]: 17: Hoare triple {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,963 INFO L290 TraceCheckUtils]: 18: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:35,964 INFO L290 TraceCheckUtils]: 19: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123809#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:31:35,964 INFO L290 TraceCheckUtils]: 20: Hoare triple {123809#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123813#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} is VALID [2022-04-27 22:31:35,964 INFO L290 TraceCheckUtils]: 21: Hoare triple {123813#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123817#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)))} is VALID [2022-04-27 22:31:35,965 INFO L290 TraceCheckUtils]: 22: Hoare triple {123817#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:35,965 INFO L290 TraceCheckUtils]: 23: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:35,965 INFO L290 TraceCheckUtils]: 24: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:35,965 INFO L290 TraceCheckUtils]: 25: Hoare triple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:35,966 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} {123677#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {123701#(and (<= 15 |main_#t~ret8|) (<= |main_#t~ret8| 15))} is VALID [2022-04-27 22:31:35,966 INFO L290 TraceCheckUtils]: 27: Hoare triple {123701#(and (<= 15 |main_#t~ret8|) (<= |main_#t~ret8| 15))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} is VALID [2022-04-27 22:31:35,966 INFO L272 TraceCheckUtils]: 28: Hoare triple {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:35,967 INFO L290 TraceCheckUtils]: 29: Hoare triple {123677#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,967 INFO L290 TraceCheckUtils]: 30: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,967 INFO L290 TraceCheckUtils]: 31: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,967 INFO L290 TraceCheckUtils]: 32: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,968 INFO L290 TraceCheckUtils]: 33: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:35,968 INFO L290 TraceCheckUtils]: 34: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:35,968 INFO L290 TraceCheckUtils]: 35: Hoare triple {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:35,969 INFO L290 TraceCheckUtils]: 36: Hoare triple {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:35,969 INFO L290 TraceCheckUtils]: 37: Hoare triple {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:35,969 INFO L290 TraceCheckUtils]: 38: Hoare triple {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,970 INFO L290 TraceCheckUtils]: 39: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,970 INFO L290 TraceCheckUtils]: 40: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123875#(and (<= student_version_~j~1 5) (= student_version_~y~1 0) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,970 INFO L290 TraceCheckUtils]: 41: Hoare triple {123875#(and (<= student_version_~j~1 5) (= student_version_~y~1 0) (<= 5 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123879#(and (<= student_version_~j~1 5) (= student_version_~j~1 student_version_~y~1) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,970 INFO L290 TraceCheckUtils]: 42: Hoare triple {123879#(and (<= student_version_~j~1 5) (= student_version_~j~1 student_version_~y~1) (<= 5 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123883#(and (<= student_version_~j~1 5) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:35,971 INFO L290 TraceCheckUtils]: 43: Hoare triple {123883#(and (<= student_version_~j~1 5) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 5 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:35,971 INFO L290 TraceCheckUtils]: 44: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:35,971 INFO L290 TraceCheckUtils]: 45: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:35,972 INFO L290 TraceCheckUtils]: 46: Hoare triple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:35,972 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {123899#(and (<= main_~n_stones1~0 15) (<= 15 |main_#t~ret9|) (<= 15 main_~n_stones1~0) (<= |main_#t~ret9| 15))} is VALID [2022-04-27 22:31:35,972 INFO L290 TraceCheckUtils]: 48: Hoare triple {123899#(and (<= main_~n_stones1~0 15) (<= 15 |main_#t~ret9|) (<= 15 main_~n_stones1~0) (<= |main_#t~ret9| 15))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {123903#(and (<= 15 main_~n_stones2~0) (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0) (<= main_~n_stones2~0 15))} is VALID [2022-04-27 22:31:35,973 INFO L272 TraceCheckUtils]: 49: Hoare triple {123903#(and (<= 15 main_~n_stones2~0) (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0) (<= main_~n_stones2~0 15))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {123907#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:35,973 INFO L290 TraceCheckUtils]: 50: Hoare triple {123907#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {123911#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:35,973 INFO L290 TraceCheckUtils]: 51: Hoare triple {123911#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {123678#false} is VALID [2022-04-27 22:31:35,973 INFO L290 TraceCheckUtils]: 52: Hoare triple {123678#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123678#false} is VALID [2022-04-27 22:31:35,973 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 42 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:31:35,974 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:31:36,332 INFO L290 TraceCheckUtils]: 52: Hoare triple {123678#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123678#false} is VALID [2022-04-27 22:31:36,333 INFO L290 TraceCheckUtils]: 51: Hoare triple {123911#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {123678#false} is VALID [2022-04-27 22:31:36,333 INFO L290 TraceCheckUtils]: 50: Hoare triple {123907#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {123911#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:36,333 INFO L272 TraceCheckUtils]: 49: Hoare triple {123723#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {123907#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:36,334 INFO L290 TraceCheckUtils]: 48: Hoare triple {123722#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {123723#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:36,334 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {123722#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:36,334 INFO L290 TraceCheckUtils]: 46: Hoare triple {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:36,335 INFO L290 TraceCheckUtils]: 45: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {123748#(and (<= |student_version_#res| 15) (<= 15 |student_version_#res|))} is VALID [2022-04-27 22:31:36,335 INFO L290 TraceCheckUtils]: 44: Hoare triple {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:36,335 INFO L290 TraceCheckUtils]: 43: Hoare triple {123746#(and (<= (+ student_version_~j~1 student_version_~y~1) 15) (<= 15 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123747#(and (<= 15 student_version_~y~1) (<= student_version_~y~1 15))} is VALID [2022-04-27 22:31:36,336 INFO L290 TraceCheckUtils]: 42: Hoare triple {123745#(and (<= 15 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 15))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123746#(and (<= (+ student_version_~j~1 student_version_~y~1) 15) (<= 15 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:36,336 INFO L290 TraceCheckUtils]: 41: Hoare triple {123744#(and (<= 15 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 15))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123745#(and (<= 15 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 15))} is VALID [2022-04-27 22:31:36,336 INFO L290 TraceCheckUtils]: 40: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {123744#(and (<= 15 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 15))} is VALID [2022-04-27 22:31:36,337 INFO L290 TraceCheckUtils]: 39: Hoare triple {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:36,337 INFO L290 TraceCheckUtils]: 38: Hoare triple {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123743#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:31:36,337 INFO L290 TraceCheckUtils]: 37: Hoare triple {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123742#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:31:36,338 INFO L290 TraceCheckUtils]: 36: Hoare triple {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123741#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:36,338 INFO L290 TraceCheckUtils]: 35: Hoare triple {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123740#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:36,338 INFO L290 TraceCheckUtils]: 34: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {123739#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:36,339 INFO L290 TraceCheckUtils]: 33: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:36,339 INFO L290 TraceCheckUtils]: 32: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:36,339 INFO L290 TraceCheckUtils]: 31: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:36,340 INFO L290 TraceCheckUtils]: 30: Hoare triple {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:36,340 INFO L290 TraceCheckUtils]: 29: Hoare triple {123677#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {123738#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:36,340 INFO L272 TraceCheckUtils]: 28: Hoare triple {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:36,340 INFO L290 TraceCheckUtils]: 27: Hoare triple {123701#(and (<= 15 |main_#t~ret8|) (<= |main_#t~ret8| 15))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {123702#(and (<= main_~n_stones1~0 15) (<= 15 main_~n_stones1~0))} is VALID [2022-04-27 22:31:36,341 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} {123677#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {123701#(and (<= 15 |main_#t~ret8|) (<= |main_#t~ret8| 15))} is VALID [2022-04-27 22:31:36,341 INFO L290 TraceCheckUtils]: 25: Hoare triple {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:36,341 INFO L290 TraceCheckUtils]: 24: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {123737#(and (<= |correct_version_#res| 15) (<= 15 |correct_version_#res|))} is VALID [2022-04-27 22:31:36,341 INFO L290 TraceCheckUtils]: 23: Hoare triple {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:36,342 INFO L290 TraceCheckUtils]: 22: Hoare triple {123735#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 15) (<= 15 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123736#(and (<= correct_version_~y~0 15) (<= 15 correct_version_~y~0))} is VALID [2022-04-27 22:31:36,342 INFO L290 TraceCheckUtils]: 21: Hoare triple {123734#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 15))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123735#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 15) (<= 15 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:31:36,343 INFO L290 TraceCheckUtils]: 20: Hoare triple {123733#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 15))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123734#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 15))} is VALID [2022-04-27 22:31:36,343 INFO L290 TraceCheckUtils]: 19: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {123733#(and (<= 15 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 15))} is VALID [2022-04-27 22:31:36,343 INFO L290 TraceCheckUtils]: 18: Hoare triple {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:36,343 INFO L290 TraceCheckUtils]: 17: Hoare triple {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123732#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:31:36,344 INFO L290 TraceCheckUtils]: 16: Hoare triple {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123731#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:31:36,344 INFO L290 TraceCheckUtils]: 15: Hoare triple {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123730#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:36,344 INFO L290 TraceCheckUtils]: 14: Hoare triple {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123729#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:36,345 INFO L290 TraceCheckUtils]: 13: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {123728#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:36,345 INFO L290 TraceCheckUtils]: 12: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:36,345 INFO L290 TraceCheckUtils]: 11: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:36,346 INFO L290 TraceCheckUtils]: 10: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:36,346 INFO L290 TraceCheckUtils]: 9: Hoare triple {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:36,346 INFO L290 TraceCheckUtils]: 8: Hoare triple {123677#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {123727#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:36,346 INFO L272 TraceCheckUtils]: 7: Hoare triple {123677#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:36,346 INFO L290 TraceCheckUtils]: 6: Hoare triple {123677#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:36,346 INFO L290 TraceCheckUtils]: 5: Hoare triple {123677#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {123677#true} is VALID [2022-04-27 22:31:36,346 INFO L272 TraceCheckUtils]: 4: Hoare triple {123677#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:36,347 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {123677#true} {123677#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:36,347 INFO L290 TraceCheckUtils]: 2: Hoare triple {123677#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:36,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {123677#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {123677#true} is VALID [2022-04-27 22:31:36,347 INFO L272 TraceCheckUtils]: 0: Hoare triple {123677#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {123677#true} is VALID [2022-04-27 22:31:36,347 INFO L134 CoverageAnalysis]: Checked inductivity of 54 backedges. 0 proven. 42 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:31:36,347 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1409682619] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:31:36,347 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:31:36,347 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [31, 30, 30] total 41 [2022-04-27 22:31:36,347 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [736544019] [2022-04-27 22:31:36,347 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:31:36,348 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:31:36,348 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:31:36,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:36,374 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-27 22:31:36,374 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-04-27 22:31:36,374 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:31:36,379 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-04-27 22:31:36,379 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=1543, Unknown=0, NotChecked=0, Total=1640 [2022-04-27 22:31:36,379 INFO L87 Difference]: Start difference. First operand 618 states and 696 transitions. Second operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:46,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:46,087 INFO L93 Difference]: Finished difference Result 624 states and 701 transitions. [2022-04-27 22:31:46,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-27 22:31:46,088 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:31:46,088 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:31:46,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:46,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 142 transitions. [2022-04-27 22:31:46,089 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:46,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 142 transitions. [2022-04-27 22:31:46,090 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 142 transitions. [2022-04-27 22:31:46,165 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:31:46,184 INFO L225 Difference]: With dead ends: 624 [2022-04-27 22:31:46,184 INFO L226 Difference]: Without dead ends: 600 [2022-04-27 22:31:46,188 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 169 GetRequests, 92 SyntacticMatches, 9 SemanticMatches, 68 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 757 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=257, Invalid=4573, Unknown=0, NotChecked=0, Total=4830 [2022-04-27 22:31:46,190 INFO L413 NwaCegarLoop]: 74 mSDtfsCounter, 126 mSDsluCounter, 162 mSDsCounter, 0 mSdLazyCounter, 3619 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 129 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 3655 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 3619 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:31:46,190 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [129 Valid, 236 Invalid, 3655 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 3619 Invalid, 0 Unknown, 0 Unchecked, 2.4s Time] [2022-04-27 22:31:46,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 600 states. [2022-04-27 22:31:51,087 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 600 to 600. [2022-04-27 22:31:51,087 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:31:51,088 INFO L82 GeneralOperation]: Start isEquivalent. First operand 600 states. Second operand has 600 states, 522 states have (on average 1.1455938697318007) internal successors, (598), 568 states have internal predecessors, (598), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (50), 26 states have call predecessors, (50), 26 states have call successors, (50) [2022-04-27 22:31:51,088 INFO L74 IsIncluded]: Start isIncluded. First operand 600 states. Second operand has 600 states, 522 states have (on average 1.1455938697318007) internal successors, (598), 568 states have internal predecessors, (598), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (50), 26 states have call predecessors, (50), 26 states have call successors, (50) [2022-04-27 22:31:51,089 INFO L87 Difference]: Start difference. First operand 600 states. Second operand has 600 states, 522 states have (on average 1.1455938697318007) internal successors, (598), 568 states have internal predecessors, (598), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (50), 26 states have call predecessors, (50), 26 states have call successors, (50) [2022-04-27 22:31:51,102 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:51,102 INFO L93 Difference]: Finished difference Result 600 states and 676 transitions. [2022-04-27 22:31:51,102 INFO L276 IsEmpty]: Start isEmpty. Operand 600 states and 676 transitions. [2022-04-27 22:31:51,104 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:51,104 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:51,104 INFO L74 IsIncluded]: Start isIncluded. First operand has 600 states, 522 states have (on average 1.1455938697318007) internal successors, (598), 568 states have internal predecessors, (598), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (50), 26 states have call predecessors, (50), 26 states have call successors, (50) Second operand 600 states. [2022-04-27 22:31:51,105 INFO L87 Difference]: Start difference. First operand has 600 states, 522 states have (on average 1.1455938697318007) internal successors, (598), 568 states have internal predecessors, (598), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (50), 26 states have call predecessors, (50), 26 states have call successors, (50) Second operand 600 states. [2022-04-27 22:31:51,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:31:51,118 INFO L93 Difference]: Finished difference Result 600 states and 676 transitions. [2022-04-27 22:31:51,118 INFO L276 IsEmpty]: Start isEmpty. Operand 600 states and 676 transitions. [2022-04-27 22:31:51,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:31:51,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:31:51,120 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:31:51,120 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:31:51,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 600 states, 522 states have (on average 1.1455938697318007) internal successors, (598), 568 states have internal predecessors, (598), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (50), 26 states have call predecessors, (50), 26 states have call successors, (50) [2022-04-27 22:31:51,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 600 states to 600 states and 676 transitions. [2022-04-27 22:31:51,137 INFO L78 Accepts]: Start accepts. Automaton has 600 states and 676 transitions. Word has length 53 [2022-04-27 22:31:51,138 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:31:51,138 INFO L495 AbstractCegarLoop]: Abstraction has 600 states and 676 transitions. [2022-04-27 22:31:51,138 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:51,138 INFO L276 IsEmpty]: Start isEmpty. Operand 600 states and 676 transitions. [2022-04-27 22:31:51,141 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-27 22:31:51,141 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:31:51,141 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:31:51,160 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (64)] Forceful destruction successful, exit code 0 [2022-04-27 22:31:51,359 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable72,64 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:51,359 INFO L420 AbstractCegarLoop]: === Iteration 74 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:31:51,359 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:31:51,359 INFO L85 PathProgramCache]: Analyzing trace with hash -279022009, now seen corresponding path program 64 times [2022-04-27 22:31:51,360 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:31:51,360 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1156170830] [2022-04-27 22:31:51,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:31:51,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:31:51,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:51,463 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:31:51,464 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:51,465 INFO L290 TraceCheckUtils]: 0: Hoare triple {127169#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {127120#true} is VALID [2022-04-27 22:31:51,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {127120#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:51,465 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {127120#true} {127120#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:51,466 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:31:51,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:51,634 INFO L290 TraceCheckUtils]: 0: Hoare triple {127120#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,635 INFO L290 TraceCheckUtils]: 1: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,635 INFO L290 TraceCheckUtils]: 2: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,636 INFO L290 TraceCheckUtils]: 3: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,636 INFO L290 TraceCheckUtils]: 4: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,636 INFO L290 TraceCheckUtils]: 5: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,637 INFO L290 TraceCheckUtils]: 6: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:51,637 INFO L290 TraceCheckUtils]: 7: Hoare triple {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:51,638 INFO L290 TraceCheckUtils]: 8: Hoare triple {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:51,638 INFO L290 TraceCheckUtils]: 9: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:51,639 INFO L290 TraceCheckUtils]: 10: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127174#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 12))} is VALID [2022-04-27 22:31:51,639 INFO L290 TraceCheckUtils]: 11: Hoare triple {127174#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127175#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} is VALID [2022-04-27 22:31:51,640 INFO L290 TraceCheckUtils]: 12: Hoare triple {127175#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127176#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:31:51,640 INFO L290 TraceCheckUtils]: 13: Hoare triple {127176#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127177#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:31:51,641 INFO L290 TraceCheckUtils]: 14: Hoare triple {127177#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:51,641 INFO L290 TraceCheckUtils]: 15: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:51,642 INFO L290 TraceCheckUtils]: 16: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:51,642 INFO L290 TraceCheckUtils]: 17: Hoare triple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:51,643 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {127120#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {127144#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:31:51,643 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:31:51,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:51,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {127120#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,866 INFO L290 TraceCheckUtils]: 1: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,866 INFO L290 TraceCheckUtils]: 3: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,867 INFO L290 TraceCheckUtils]: 4: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,867 INFO L290 TraceCheckUtils]: 5: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,867 INFO L290 TraceCheckUtils]: 6: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:51,868 INFO L290 TraceCheckUtils]: 7: Hoare triple {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:51,868 INFO L290 TraceCheckUtils]: 8: Hoare triple {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:51,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:51,869 INFO L290 TraceCheckUtils]: 10: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127184#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 12) (<= 12 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:31:51,869 INFO L290 TraceCheckUtils]: 11: Hoare triple {127184#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 12) (<= 12 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127185#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} is VALID [2022-04-27 22:31:51,869 INFO L290 TraceCheckUtils]: 12: Hoare triple {127185#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127186#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:31:51,870 INFO L290 TraceCheckUtils]: 13: Hoare triple {127186#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127187#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:51,870 INFO L290 TraceCheckUtils]: 14: Hoare triple {127187#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:51,870 INFO L290 TraceCheckUtils]: 15: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:51,871 INFO L290 TraceCheckUtils]: 16: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:51,871 INFO L290 TraceCheckUtils]: 17: Hoare triple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:51,871 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {127165#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:51,872 INFO L272 TraceCheckUtils]: 0: Hoare triple {127120#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127169#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:31:51,872 INFO L290 TraceCheckUtils]: 1: Hoare triple {127169#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {127120#true} is VALID [2022-04-27 22:31:51,872 INFO L290 TraceCheckUtils]: 2: Hoare triple {127120#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:51,872 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127120#true} {127120#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:51,872 INFO L272 TraceCheckUtils]: 4: Hoare triple {127120#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:51,872 INFO L290 TraceCheckUtils]: 5: Hoare triple {127120#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:51,872 INFO L290 TraceCheckUtils]: 6: Hoare triple {127120#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:51,872 INFO L272 TraceCheckUtils]: 7: Hoare triple {127120#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:51,873 INFO L290 TraceCheckUtils]: 8: Hoare triple {127120#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,873 INFO L290 TraceCheckUtils]: 9: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,873 INFO L290 TraceCheckUtils]: 10: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,873 INFO L290 TraceCheckUtils]: 11: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,874 INFO L290 TraceCheckUtils]: 12: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,874 INFO L290 TraceCheckUtils]: 13: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:51,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:51,875 INFO L290 TraceCheckUtils]: 15: Hoare triple {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:51,875 INFO L290 TraceCheckUtils]: 16: Hoare triple {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:51,875 INFO L290 TraceCheckUtils]: 17: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:51,875 INFO L290 TraceCheckUtils]: 18: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127174#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 12))} is VALID [2022-04-27 22:31:51,876 INFO L290 TraceCheckUtils]: 19: Hoare triple {127174#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127175#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} is VALID [2022-04-27 22:31:51,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {127175#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127176#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:31:51,877 INFO L290 TraceCheckUtils]: 21: Hoare triple {127176#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127177#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:31:51,877 INFO L290 TraceCheckUtils]: 22: Hoare triple {127177#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:51,877 INFO L290 TraceCheckUtils]: 23: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:51,877 INFO L290 TraceCheckUtils]: 24: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:51,878 INFO L290 TraceCheckUtils]: 25: Hoare triple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:51,878 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {127120#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {127144#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:31:51,878 INFO L290 TraceCheckUtils]: 27: Hoare triple {127144#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:31:51,878 INFO L272 TraceCheckUtils]: 28: Hoare triple {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:51,879 INFO L290 TraceCheckUtils]: 29: Hoare triple {127120#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,879 INFO L290 TraceCheckUtils]: 30: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,879 INFO L290 TraceCheckUtils]: 31: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,879 INFO L290 TraceCheckUtils]: 32: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,880 INFO L290 TraceCheckUtils]: 33: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,880 INFO L290 TraceCheckUtils]: 34: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:51,880 INFO L290 TraceCheckUtils]: 35: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:51,881 INFO L290 TraceCheckUtils]: 36: Hoare triple {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:51,881 INFO L290 TraceCheckUtils]: 37: Hoare triple {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:51,881 INFO L290 TraceCheckUtils]: 38: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:51,882 INFO L290 TraceCheckUtils]: 39: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127184#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 12) (<= 12 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:31:51,882 INFO L290 TraceCheckUtils]: 40: Hoare triple {127184#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 12) (<= 12 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127185#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} is VALID [2022-04-27 22:31:51,882 INFO L290 TraceCheckUtils]: 41: Hoare triple {127185#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127186#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:31:51,883 INFO L290 TraceCheckUtils]: 42: Hoare triple {127186#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127187#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:51,883 INFO L290 TraceCheckUtils]: 43: Hoare triple {127187#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:51,883 INFO L290 TraceCheckUtils]: 44: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:51,884 INFO L290 TraceCheckUtils]: 45: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:51,884 INFO L290 TraceCheckUtils]: 46: Hoare triple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:51,884 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {127165#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:51,885 INFO L290 TraceCheckUtils]: 48: Hoare triple {127165#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {127166#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:51,885 INFO L272 TraceCheckUtils]: 49: Hoare triple {127166#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {127167#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:31:51,885 INFO L290 TraceCheckUtils]: 50: Hoare triple {127167#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {127168#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:31:51,886 INFO L290 TraceCheckUtils]: 51: Hoare triple {127168#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {127121#false} is VALID [2022-04-27 22:31:51,886 INFO L290 TraceCheckUtils]: 52: Hoare triple {127121#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127121#false} is VALID [2022-04-27 22:31:51,886 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:31:51,886 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:31:51,886 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1156170830] [2022-04-27 22:31:51,886 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1156170830] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:31:51,886 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [764786972] [2022-04-27 22:31:51,886 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:31:51,886 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:31:51,886 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:31:51,887 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:31:51,890 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (65)] Waiting until timeout for monitored process [2022-04-27 22:31:51,972 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:31:51,972 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:31:51,973 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 51 conjunts are in the unsatisfiable core [2022-04-27 22:31:51,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:31:51,981 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:31:52,531 INFO L272 TraceCheckUtils]: 0: Hoare triple {127120#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,531 INFO L290 TraceCheckUtils]: 1: Hoare triple {127120#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {127120#true} is VALID [2022-04-27 22:31:52,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {127120#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127120#true} {127120#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,531 INFO L272 TraceCheckUtils]: 4: Hoare triple {127120#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,531 INFO L290 TraceCheckUtils]: 5: Hoare triple {127120#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:52,531 INFO L290 TraceCheckUtils]: 6: Hoare triple {127120#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,531 INFO L272 TraceCheckUtils]: 7: Hoare triple {127120#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:52,532 INFO L290 TraceCheckUtils]: 8: Hoare triple {127120#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,532 INFO L290 TraceCheckUtils]: 9: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,532 INFO L290 TraceCheckUtils]: 10: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,532 INFO L290 TraceCheckUtils]: 11: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,533 INFO L290 TraceCheckUtils]: 12: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,533 INFO L290 TraceCheckUtils]: 13: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,533 INFO L290 TraceCheckUtils]: 14: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:52,534 INFO L290 TraceCheckUtils]: 15: Hoare triple {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:52,534 INFO L290 TraceCheckUtils]: 16: Hoare triple {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,534 INFO L290 TraceCheckUtils]: 17: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,535 INFO L290 TraceCheckUtils]: 18: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127247#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,535 INFO L290 TraceCheckUtils]: 19: Hoare triple {127247#(and (<= 3 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127251#(and (= correct_version_~j~0 correct_version_~y~0) (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,535 INFO L290 TraceCheckUtils]: 20: Hoare triple {127251#(and (= correct_version_~j~0 correct_version_~y~0) (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127255#(and (<= 3 correct_version_~j~0) (= correct_version_~j~0 (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,536 INFO L290 TraceCheckUtils]: 21: Hoare triple {127255#(and (<= 3 correct_version_~j~0) (= correct_version_~j~0 (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127259#(and (= correct_version_~j~0 (+ correct_version_~y~0 (* (- 2) correct_version_~j~0))) (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,536 INFO L290 TraceCheckUtils]: 22: Hoare triple {127259#(and (= correct_version_~j~0 (+ correct_version_~y~0 (* (- 2) correct_version_~j~0))) (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:52,536 INFO L290 TraceCheckUtils]: 23: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:52,537 INFO L290 TraceCheckUtils]: 24: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:52,537 INFO L290 TraceCheckUtils]: 25: Hoare triple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:52,537 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {127120#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {127144#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:31:52,538 INFO L290 TraceCheckUtils]: 27: Hoare triple {127144#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:31:52,538 INFO L272 TraceCheckUtils]: 28: Hoare triple {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:52,538 INFO L290 TraceCheckUtils]: 29: Hoare triple {127120#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,538 INFO L290 TraceCheckUtils]: 30: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,539 INFO L290 TraceCheckUtils]: 31: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,539 INFO L290 TraceCheckUtils]: 32: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,539 INFO L290 TraceCheckUtils]: 33: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,539 INFO L290 TraceCheckUtils]: 34: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,540 INFO L290 TraceCheckUtils]: 35: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:52,540 INFO L290 TraceCheckUtils]: 36: Hoare triple {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:52,540 INFO L290 TraceCheckUtils]: 37: Hoare triple {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:52,541 INFO L290 TraceCheckUtils]: 38: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:52,541 INFO L290 TraceCheckUtils]: 39: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127314#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:52,541 INFO L290 TraceCheckUtils]: 40: Hoare triple {127314#(and (= student_version_~y~1 0) (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127318#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:31:52,542 INFO L290 TraceCheckUtils]: 41: Hoare triple {127318#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127322#(and (<= student_version_~j~1 3) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:52,542 INFO L290 TraceCheckUtils]: 42: Hoare triple {127322#(and (<= student_version_~j~1 3) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127326#(and (<= student_version_~j~1 3) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:52,543 INFO L290 TraceCheckUtils]: 43: Hoare triple {127326#(and (<= student_version_~j~1 3) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 3 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:52,543 INFO L290 TraceCheckUtils]: 44: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:52,543 INFO L290 TraceCheckUtils]: 45: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:52,543 INFO L290 TraceCheckUtils]: 46: Hoare triple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:52,544 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {127342#(and (<= main_~n_stones1~0 12) (<= 12 |main_#t~ret9|) (<= |main_#t~ret9| 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:31:52,544 INFO L290 TraceCheckUtils]: 48: Hoare triple {127342#(and (<= main_~n_stones1~0 12) (<= 12 |main_#t~ret9|) (<= |main_#t~ret9| 12) (<= 12 main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {127346#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones2~0) (<= main_~n_stones2~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:31:52,545 INFO L272 TraceCheckUtils]: 49: Hoare triple {127346#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones2~0) (<= main_~n_stones2~0 12) (<= 12 main_~n_stones1~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {127350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:52,545 INFO L290 TraceCheckUtils]: 50: Hoare triple {127350#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {127354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:52,545 INFO L290 TraceCheckUtils]: 51: Hoare triple {127354#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {127121#false} is VALID [2022-04-27 22:31:52,545 INFO L290 TraceCheckUtils]: 52: Hoare triple {127121#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127121#false} is VALID [2022-04-27 22:31:52,545 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:31:52,545 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:31:52,893 INFO L290 TraceCheckUtils]: 52: Hoare triple {127121#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127121#false} is VALID [2022-04-27 22:31:52,893 INFO L290 TraceCheckUtils]: 51: Hoare triple {127354#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {127121#false} is VALID [2022-04-27 22:31:52,894 INFO L290 TraceCheckUtils]: 50: Hoare triple {127350#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {127354#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:31:52,894 INFO L272 TraceCheckUtils]: 49: Hoare triple {127166#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {127350#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:31:52,894 INFO L290 TraceCheckUtils]: 48: Hoare triple {127165#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {127166#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:31:52,895 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {127165#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:31:52,895 INFO L290 TraceCheckUtils]: 46: Hoare triple {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:52,896 INFO L290 TraceCheckUtils]: 45: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {127189#(and (<= 12 |student_version_#res|) (<= |student_version_#res| 12))} is VALID [2022-04-27 22:31:52,896 INFO L290 TraceCheckUtils]: 44: Hoare triple {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:52,896 INFO L290 TraceCheckUtils]: 43: Hoare triple {127187#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127188#(and (<= 12 student_version_~y~1) (<= student_version_~y~1 12))} is VALID [2022-04-27 22:31:52,897 INFO L290 TraceCheckUtils]: 42: Hoare triple {127186#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127187#(and (<= (+ student_version_~j~1 student_version_~y~1) 12) (<= 12 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:31:52,897 INFO L290 TraceCheckUtils]: 41: Hoare triple {127185#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127186#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 12) (<= 12 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:31:52,897 INFO L290 TraceCheckUtils]: 40: Hoare triple {127184#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 12) (<= 12 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127185#(and (<= 12 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 12))} is VALID [2022-04-27 22:31:52,898 INFO L290 TraceCheckUtils]: 39: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {127184#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 12) (<= 12 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:31:52,898 INFO L290 TraceCheckUtils]: 38: Hoare triple {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:52,898 INFO L290 TraceCheckUtils]: 37: Hoare triple {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127183#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:31:52,899 INFO L290 TraceCheckUtils]: 36: Hoare triple {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127182#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:31:52,899 INFO L290 TraceCheckUtils]: 35: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {127181#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:31:52,899 INFO L290 TraceCheckUtils]: 34: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,900 INFO L290 TraceCheckUtils]: 33: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,900 INFO L290 TraceCheckUtils]: 32: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,900 INFO L290 TraceCheckUtils]: 31: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,900 INFO L290 TraceCheckUtils]: 30: Hoare triple {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,901 INFO L290 TraceCheckUtils]: 29: Hoare triple {127120#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {127180#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:31:52,901 INFO L272 TraceCheckUtils]: 28: Hoare triple {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:52,901 INFO L290 TraceCheckUtils]: 27: Hoare triple {127144#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {127145#(and (<= main_~n_stones1~0 12) (<= 12 main_~n_stones1~0))} is VALID [2022-04-27 22:31:52,901 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} {127120#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {127144#(and (<= 12 |main_#t~ret8|) (<= |main_#t~ret8| 12))} is VALID [2022-04-27 22:31:52,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:52,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {127179#(and (<= |correct_version_#res| 12) (<= 12 |correct_version_#res|))} is VALID [2022-04-27 22:31:52,902 INFO L290 TraceCheckUtils]: 23: Hoare triple {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:52,902 INFO L290 TraceCheckUtils]: 22: Hoare triple {127177#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127178#(and (<= 12 correct_version_~y~0) (<= correct_version_~y~0 12))} is VALID [2022-04-27 22:31:52,903 INFO L290 TraceCheckUtils]: 21: Hoare triple {127176#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127177#(and (<= 12 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 12))} is VALID [2022-04-27 22:31:52,903 INFO L290 TraceCheckUtils]: 20: Hoare triple {127175#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127176#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 12) (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:31:52,904 INFO L290 TraceCheckUtils]: 19: Hoare triple {127174#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 12))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127175#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 12))} is VALID [2022-04-27 22:31:52,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {127174#(and (<= 12 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 12))} is VALID [2022-04-27 22:31:52,904 INFO L290 TraceCheckUtils]: 17: Hoare triple {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,905 INFO L290 TraceCheckUtils]: 16: Hoare triple {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127173#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:31:52,905 INFO L290 TraceCheckUtils]: 15: Hoare triple {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127172#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:31:52,905 INFO L290 TraceCheckUtils]: 14: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {127171#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:31:52,905 INFO L290 TraceCheckUtils]: 13: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,906 INFO L290 TraceCheckUtils]: 12: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,906 INFO L290 TraceCheckUtils]: 11: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,906 INFO L290 TraceCheckUtils]: 10: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,907 INFO L290 TraceCheckUtils]: 9: Hoare triple {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,907 INFO L290 TraceCheckUtils]: 8: Hoare triple {127120#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {127170#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:31:52,907 INFO L272 TraceCheckUtils]: 7: Hoare triple {127120#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L290 TraceCheckUtils]: 6: Hoare triple {127120#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {127120#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {127120#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127120#true} {127120#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {127120#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {127120#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {127120#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127120#true} is VALID [2022-04-27 22:31:52,907 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:31:52,908 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [764786972] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:31:52,908 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:31:52,908 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 28, 28] total 41 [2022-04-27 22:31:52,908 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [14553197] [2022-04-27 22:31:52,908 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:31:52,908 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:31:52,908 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:31:52,908 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:31:52,936 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-27 22:31:52,936 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-04-27 22:31:52,936 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:31:52,937 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-04-27 22:31:52,937 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=1539, Unknown=0, NotChecked=0, Total=1640 [2022-04-27 22:31:52,937 INFO L87 Difference]: Start difference. First operand 600 states and 676 transitions. Second operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:00,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:00,559 INFO L93 Difference]: Finished difference Result 606 states and 681 transitions. [2022-04-27 22:32:00,559 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-27 22:32:00,559 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:32:00,559 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:32:00,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:00,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 112 transitions. [2022-04-27 22:32:00,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:00,561 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 112 transitions. [2022-04-27 22:32:00,561 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 112 transitions. [2022-04-27 22:32:00,625 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:32:00,647 INFO L225 Difference]: With dead ends: 606 [2022-04-27 22:32:00,647 INFO L226 Difference]: Without dead ends: 580 [2022-04-27 22:32:00,649 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 165 GetRequests, 90 SyntacticMatches, 9 SemanticMatches, 66 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 762 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=259, Invalid=4297, Unknown=0, NotChecked=0, Total=4556 [2022-04-27 22:32:00,650 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 91 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 2334 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 93 SdHoareTripleChecker+Valid, 196 SdHoareTripleChecker+Invalid, 2368 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 2334 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-27 22:32:00,650 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [93 Valid, 196 Invalid, 2368 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 2334 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-27 22:32:00,650 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 580 states. [2022-04-27 22:32:04,308 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 580 to 580. [2022-04-27 22:32:04,308 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:32:04,308 INFO L82 GeneralOperation]: Start isEquivalent. First operand 580 states. Second operand has 580 states, 505 states have (on average 1.1465346534653464) internal successors, (579), 549 states have internal predecessors, (579), 27 states have call successors, (27), 5 states have call predecessors, (27), 47 states have return successors, (48), 25 states have call predecessors, (48), 25 states have call successors, (48) [2022-04-27 22:32:04,309 INFO L74 IsIncluded]: Start isIncluded. First operand 580 states. Second operand has 580 states, 505 states have (on average 1.1465346534653464) internal successors, (579), 549 states have internal predecessors, (579), 27 states have call successors, (27), 5 states have call predecessors, (27), 47 states have return successors, (48), 25 states have call predecessors, (48), 25 states have call successors, (48) [2022-04-27 22:32:04,309 INFO L87 Difference]: Start difference. First operand 580 states. Second operand has 580 states, 505 states have (on average 1.1465346534653464) internal successors, (579), 549 states have internal predecessors, (579), 27 states have call successors, (27), 5 states have call predecessors, (27), 47 states have return successors, (48), 25 states have call predecessors, (48), 25 states have call successors, (48) [2022-04-27 22:32:04,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:04,321 INFO L93 Difference]: Finished difference Result 580 states and 654 transitions. [2022-04-27 22:32:04,321 INFO L276 IsEmpty]: Start isEmpty. Operand 580 states and 654 transitions. [2022-04-27 22:32:04,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:32:04,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:32:04,323 INFO L74 IsIncluded]: Start isIncluded. First operand has 580 states, 505 states have (on average 1.1465346534653464) internal successors, (579), 549 states have internal predecessors, (579), 27 states have call successors, (27), 5 states have call predecessors, (27), 47 states have return successors, (48), 25 states have call predecessors, (48), 25 states have call successors, (48) Second operand 580 states. [2022-04-27 22:32:04,323 INFO L87 Difference]: Start difference. First operand has 580 states, 505 states have (on average 1.1465346534653464) internal successors, (579), 549 states have internal predecessors, (579), 27 states have call successors, (27), 5 states have call predecessors, (27), 47 states have return successors, (48), 25 states have call predecessors, (48), 25 states have call successors, (48) Second operand 580 states. [2022-04-27 22:32:04,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:04,335 INFO L93 Difference]: Finished difference Result 580 states and 654 transitions. [2022-04-27 22:32:04,335 INFO L276 IsEmpty]: Start isEmpty. Operand 580 states and 654 transitions. [2022-04-27 22:32:04,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:32:04,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:32:04,337 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:32:04,337 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:32:04,338 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 580 states, 505 states have (on average 1.1465346534653464) internal successors, (579), 549 states have internal predecessors, (579), 27 states have call successors, (27), 5 states have call predecessors, (27), 47 states have return successors, (48), 25 states have call predecessors, (48), 25 states have call successors, (48) [2022-04-27 22:32:04,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 580 states to 580 states and 654 transitions. [2022-04-27 22:32:04,353 INFO L78 Accepts]: Start accepts. Automaton has 580 states and 654 transitions. Word has length 53 [2022-04-27 22:32:04,353 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:32:04,353 INFO L495 AbstractCegarLoop]: Abstraction has 580 states and 654 transitions. [2022-04-27 22:32:04,353 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:04,354 INFO L276 IsEmpty]: Start isEmpty. Operand 580 states and 654 transitions. [2022-04-27 22:32:04,356 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-27 22:32:04,356 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:32:04,356 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:32:04,372 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (65)] Forceful destruction successful, exit code 0 [2022-04-27 22:32:04,561 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable73,65 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:32:04,561 INFO L420 AbstractCegarLoop]: === Iteration 75 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:32:04,561 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:32:04,561 INFO L85 PathProgramCache]: Analyzing trace with hash -1965459742, now seen corresponding path program 65 times [2022-04-27 22:32:04,561 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:32:04,561 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1529930603] [2022-04-27 22:32:04,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:32:04,562 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:32:04,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:04,648 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:32:04,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:04,650 INFO L290 TraceCheckUtils]: 0: Hoare triple {130510#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {130461#true} is VALID [2022-04-27 22:32:04,650 INFO L290 TraceCheckUtils]: 1: Hoare triple {130461#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:04,650 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {130461#true} {130461#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:04,650 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:32:04,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:04,741 INFO L290 TraceCheckUtils]: 0: Hoare triple {130461#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,742 INFO L290 TraceCheckUtils]: 3: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,743 INFO L290 TraceCheckUtils]: 4: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,743 INFO L290 TraceCheckUtils]: 5: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,743 INFO L290 TraceCheckUtils]: 6: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,743 INFO L290 TraceCheckUtils]: 7: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:04,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:04,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130513#(and (<= 5 (+ (* correct_version_~j~0 5) correct_version_~y~0)) (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 5))} is VALID [2022-04-27 22:32:04,744 INFO L290 TraceCheckUtils]: 10: Hoare triple {130513#(and (<= 5 (+ (* correct_version_~j~0 5) correct_version_~y~0)) (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130514#(and (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 5))} is VALID [2022-04-27 22:32:04,745 INFO L290 TraceCheckUtils]: 11: Hoare triple {130514#(and (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130515#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:32:04,745 INFO L290 TraceCheckUtils]: 12: Hoare triple {130515#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130516#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:32:04,745 INFO L290 TraceCheckUtils]: 13: Hoare triple {130516#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130517#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:32:04,746 INFO L290 TraceCheckUtils]: 14: Hoare triple {130517#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:04,746 INFO L290 TraceCheckUtils]: 15: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:04,746 INFO L290 TraceCheckUtils]: 16: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:04,747 INFO L290 TraceCheckUtils]: 17: Hoare triple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:04,747 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {130461#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {130485#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:32:04,747 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:32:04,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:04,874 INFO L290 TraceCheckUtils]: 0: Hoare triple {130461#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,875 INFO L290 TraceCheckUtils]: 3: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,876 INFO L290 TraceCheckUtils]: 4: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,876 INFO L290 TraceCheckUtils]: 5: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,876 INFO L290 TraceCheckUtils]: 6: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,877 INFO L290 TraceCheckUtils]: 7: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:04,877 INFO L290 TraceCheckUtils]: 8: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:04,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130522#(and (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 5) (<= 5 (+ student_version_~y~1 (* 5 student_version_~j~1))))} is VALID [2022-04-27 22:32:04,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {130522#(and (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 5) (<= 5 (+ student_version_~y~1 (* 5 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130523#(and (<= 5 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 5))} is VALID [2022-04-27 22:32:04,878 INFO L290 TraceCheckUtils]: 11: Hoare triple {130523#(and (<= 5 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130524#(and (<= 5 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 5))} is VALID [2022-04-27 22:32:04,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {130524#(and (<= 5 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130525#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 5) (<= 5 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:32:04,879 INFO L290 TraceCheckUtils]: 13: Hoare triple {130525#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 5) (<= 5 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130526#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:32:04,879 INFO L290 TraceCheckUtils]: 14: Hoare triple {130526#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:04,879 INFO L290 TraceCheckUtils]: 15: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:04,880 INFO L290 TraceCheckUtils]: 16: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:04,880 INFO L290 TraceCheckUtils]: 17: Hoare triple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:04,880 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {130506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:32:04,881 INFO L272 TraceCheckUtils]: 0: Hoare triple {130461#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130510#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:32:04,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {130510#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {130461#true} is VALID [2022-04-27 22:32:04,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {130461#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:04,881 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {130461#true} {130461#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:04,881 INFO L272 TraceCheckUtils]: 4: Hoare triple {130461#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:04,881 INFO L290 TraceCheckUtils]: 5: Hoare triple {130461#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:04,881 INFO L290 TraceCheckUtils]: 6: Hoare triple {130461#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:04,881 INFO L272 TraceCheckUtils]: 7: Hoare triple {130461#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:04,881 INFO L290 TraceCheckUtils]: 8: Hoare triple {130461#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,882 INFO L290 TraceCheckUtils]: 9: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,882 INFO L290 TraceCheckUtils]: 10: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,882 INFO L290 TraceCheckUtils]: 11: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,882 INFO L290 TraceCheckUtils]: 12: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,883 INFO L290 TraceCheckUtils]: 13: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,883 INFO L290 TraceCheckUtils]: 14: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:04,883 INFO L290 TraceCheckUtils]: 15: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:04,884 INFO L290 TraceCheckUtils]: 16: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:04,884 INFO L290 TraceCheckUtils]: 17: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130513#(and (<= 5 (+ (* correct_version_~j~0 5) correct_version_~y~0)) (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 5))} is VALID [2022-04-27 22:32:04,884 INFO L290 TraceCheckUtils]: 18: Hoare triple {130513#(and (<= 5 (+ (* correct_version_~j~0 5) correct_version_~y~0)) (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130514#(and (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 5))} is VALID [2022-04-27 22:32:04,885 INFO L290 TraceCheckUtils]: 19: Hoare triple {130514#(and (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130515#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:32:04,885 INFO L290 TraceCheckUtils]: 20: Hoare triple {130515#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130516#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:32:04,885 INFO L290 TraceCheckUtils]: 21: Hoare triple {130516#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130517#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:32:04,886 INFO L290 TraceCheckUtils]: 22: Hoare triple {130517#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:04,886 INFO L290 TraceCheckUtils]: 23: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:04,886 INFO L290 TraceCheckUtils]: 24: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:04,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:04,887 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {130461#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {130485#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:32:04,887 INFO L290 TraceCheckUtils]: 27: Hoare triple {130485#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:32:04,887 INFO L272 TraceCheckUtils]: 28: Hoare triple {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:04,887 INFO L290 TraceCheckUtils]: 29: Hoare triple {130461#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,888 INFO L290 TraceCheckUtils]: 30: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,888 INFO L290 TraceCheckUtils]: 31: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,888 INFO L290 TraceCheckUtils]: 32: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,889 INFO L290 TraceCheckUtils]: 33: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,889 INFO L290 TraceCheckUtils]: 34: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,889 INFO L290 TraceCheckUtils]: 35: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:04,889 INFO L290 TraceCheckUtils]: 36: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:04,890 INFO L290 TraceCheckUtils]: 37: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:04,890 INFO L290 TraceCheckUtils]: 38: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130522#(and (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 5) (<= 5 (+ student_version_~y~1 (* 5 student_version_~j~1))))} is VALID [2022-04-27 22:32:04,890 INFO L290 TraceCheckUtils]: 39: Hoare triple {130522#(and (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 5) (<= 5 (+ student_version_~y~1 (* 5 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130523#(and (<= 5 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 5))} is VALID [2022-04-27 22:32:04,891 INFO L290 TraceCheckUtils]: 40: Hoare triple {130523#(and (<= 5 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130524#(and (<= 5 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 5))} is VALID [2022-04-27 22:32:04,891 INFO L290 TraceCheckUtils]: 41: Hoare triple {130524#(and (<= 5 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130525#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 5) (<= 5 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:32:04,891 INFO L290 TraceCheckUtils]: 42: Hoare triple {130525#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 5) (<= 5 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130526#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:32:04,892 INFO L290 TraceCheckUtils]: 43: Hoare triple {130526#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:04,892 INFO L290 TraceCheckUtils]: 44: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:04,892 INFO L290 TraceCheckUtils]: 45: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:04,892 INFO L290 TraceCheckUtils]: 46: Hoare triple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:04,893 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {130506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:32:04,893 INFO L290 TraceCheckUtils]: 48: Hoare triple {130506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {130507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:32:04,894 INFO L272 TraceCheckUtils]: 49: Hoare triple {130507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {130508#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:32:04,894 INFO L290 TraceCheckUtils]: 50: Hoare triple {130508#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {130509#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:32:04,894 INFO L290 TraceCheckUtils]: 51: Hoare triple {130509#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {130462#false} is VALID [2022-04-27 22:32:04,894 INFO L290 TraceCheckUtils]: 52: Hoare triple {130462#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130462#false} is VALID [2022-04-27 22:32:04,894 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 22:32:04,895 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:32:04,895 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1529930603] [2022-04-27 22:32:04,895 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1529930603] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:32:04,895 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [893555529] [2022-04-27 22:32:04,895 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:32:04,895 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:32:04,895 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:32:04,896 INFO L229 MonitoredProcess]: Starting monitored process 66 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:32:04,897 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (66)] Waiting until timeout for monitored process [2022-04-27 22:32:05,003 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2022-04-27 22:32:05,004 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:32:05,005 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 47 conjunts are in the unsatisfiable core [2022-04-27 22:32:05,010 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:05,011 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:32:05,552 INFO L272 TraceCheckUtils]: 0: Hoare triple {130461#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {130461#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {130461#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {130461#true} {130461#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L272 TraceCheckUtils]: 4: Hoare triple {130461#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L290 TraceCheckUtils]: 5: Hoare triple {130461#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L290 TraceCheckUtils]: 6: Hoare triple {130461#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L272 TraceCheckUtils]: 7: Hoare triple {130461#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:05,553 INFO L290 TraceCheckUtils]: 8: Hoare triple {130461#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,554 INFO L290 TraceCheckUtils]: 9: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,554 INFO L290 TraceCheckUtils]: 10: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,554 INFO L290 TraceCheckUtils]: 11: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,554 INFO L290 TraceCheckUtils]: 12: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,555 INFO L290 TraceCheckUtils]: 13: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,555 INFO L290 TraceCheckUtils]: 14: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,555 INFO L290 TraceCheckUtils]: 15: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,555 INFO L290 TraceCheckUtils]: 16: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,556 INFO L290 TraceCheckUtils]: 17: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130583#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,556 INFO L290 TraceCheckUtils]: 18: Hoare triple {130583#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130587#(and (<= 1 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,556 INFO L290 TraceCheckUtils]: 19: Hoare triple {130587#(and (<= 1 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130591#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {130591#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130595#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 3)) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,557 INFO L290 TraceCheckUtils]: 21: Hoare triple {130595#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 3)) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130599#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 4)) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,558 INFO L290 TraceCheckUtils]: 22: Hoare triple {130599#(and (<= 1 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 4)) (<= correct_version_~j~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:05,558 INFO L290 TraceCheckUtils]: 23: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:05,558 INFO L290 TraceCheckUtils]: 24: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:05,558 INFO L290 TraceCheckUtils]: 25: Hoare triple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:05,559 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {130461#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {130485#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:32:05,559 INFO L290 TraceCheckUtils]: 27: Hoare triple {130485#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:32:05,559 INFO L272 TraceCheckUtils]: 28: Hoare triple {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:05,559 INFO L290 TraceCheckUtils]: 29: Hoare triple {130461#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,560 INFO L290 TraceCheckUtils]: 31: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,560 INFO L290 TraceCheckUtils]: 32: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,560 INFO L290 TraceCheckUtils]: 33: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,561 INFO L290 TraceCheckUtils]: 34: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,561 INFO L290 TraceCheckUtils]: 35: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,561 INFO L290 TraceCheckUtils]: 36: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,561 INFO L290 TraceCheckUtils]: 37: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,562 INFO L290 TraceCheckUtils]: 38: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130651#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,562 INFO L290 TraceCheckUtils]: 39: Hoare triple {130651#(and (= student_version_~y~1 0) (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130655#(and (<= student_version_~j~1 1) (= student_version_~j~1 student_version_~y~1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,562 INFO L290 TraceCheckUtils]: 40: Hoare triple {130655#(and (<= student_version_~j~1 1) (= student_version_~j~1 student_version_~y~1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130659#(and (<= student_version_~j~1 1) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,563 INFO L290 TraceCheckUtils]: 41: Hoare triple {130659#(and (<= student_version_~j~1 1) (= (* 2 student_version_~j~1) student_version_~y~1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130663#(and (<= student_version_~j~1 1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,563 INFO L290 TraceCheckUtils]: 42: Hoare triple {130663#(and (<= student_version_~j~1 1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130667#(and (<= student_version_~j~1 1) (= (* student_version_~j~1 4) student_version_~y~1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,564 INFO L290 TraceCheckUtils]: 43: Hoare triple {130667#(and (<= student_version_~j~1 1) (= (* student_version_~j~1 4) student_version_~y~1) (<= 1 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:05,564 INFO L290 TraceCheckUtils]: 44: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:05,564 INFO L290 TraceCheckUtils]: 45: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:05,564 INFO L290 TraceCheckUtils]: 46: Hoare triple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:05,565 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {130683#(and (<= 5 |main_#t~ret9|) (<= main_~n_stones1~0 5) (<= |main_#t~ret9| 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:32:05,565 INFO L290 TraceCheckUtils]: 48: Hoare triple {130683#(and (<= 5 |main_#t~ret9|) (<= main_~n_stones1~0 5) (<= |main_#t~ret9| 5) (<= 5 main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {130687#(and (<= main_~n_stones1~0 5) (<= main_~n_stones2~0 5) (<= 5 main_~n_stones1~0) (<= 5 main_~n_stones2~0))} is VALID [2022-04-27 22:32:05,565 INFO L272 TraceCheckUtils]: 49: Hoare triple {130687#(and (<= main_~n_stones1~0 5) (<= main_~n_stones2~0 5) (<= 5 main_~n_stones1~0) (<= 5 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {130691#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:32:05,566 INFO L290 TraceCheckUtils]: 50: Hoare triple {130691#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {130695#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:32:05,566 INFO L290 TraceCheckUtils]: 51: Hoare triple {130695#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {130462#false} is VALID [2022-04-27 22:32:05,566 INFO L290 TraceCheckUtils]: 52: Hoare triple {130462#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130462#false} is VALID [2022-04-27 22:32:05,566 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 22:32:05,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:32:05,881 INFO L290 TraceCheckUtils]: 52: Hoare triple {130462#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130462#false} is VALID [2022-04-27 22:32:05,882 INFO L290 TraceCheckUtils]: 51: Hoare triple {130695#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {130462#false} is VALID [2022-04-27 22:32:05,882 INFO L290 TraceCheckUtils]: 50: Hoare triple {130691#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {130695#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:32:05,883 INFO L272 TraceCheckUtils]: 49: Hoare triple {130507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {130691#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:32:05,883 INFO L290 TraceCheckUtils]: 48: Hoare triple {130506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {130507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:32:05,883 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {130506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:32:05,884 INFO L290 TraceCheckUtils]: 46: Hoare triple {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:05,884 INFO L290 TraceCheckUtils]: 45: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {130528#(and (<= |student_version_#res| 5) (<= 5 |student_version_#res|))} is VALID [2022-04-27 22:32:05,884 INFO L290 TraceCheckUtils]: 44: Hoare triple {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:05,885 INFO L290 TraceCheckUtils]: 43: Hoare triple {130526#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130527#(and (<= student_version_~y~1 5) (<= 5 student_version_~y~1))} is VALID [2022-04-27 22:32:05,885 INFO L290 TraceCheckUtils]: 42: Hoare triple {130525#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 5) (<= 5 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130526#(and (<= (+ student_version_~j~1 student_version_~y~1) 5) (<= 5 (+ student_version_~j~1 student_version_~y~1)))} is VALID [2022-04-27 22:32:05,885 INFO L290 TraceCheckUtils]: 41: Hoare triple {130524#(and (<= 5 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130525#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 5) (<= 5 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:32:05,886 INFO L290 TraceCheckUtils]: 40: Hoare triple {130523#(and (<= 5 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130524#(and (<= 5 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 5))} is VALID [2022-04-27 22:32:05,886 INFO L290 TraceCheckUtils]: 39: Hoare triple {130522#(and (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 5) (<= 5 (+ student_version_~y~1 (* 5 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130523#(and (<= 5 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 5))} is VALID [2022-04-27 22:32:05,886 INFO L290 TraceCheckUtils]: 38: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {130522#(and (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 5) (<= 5 (+ student_version_~y~1 (* 5 student_version_~j~1))))} is VALID [2022-04-27 22:32:05,887 INFO L290 TraceCheckUtils]: 37: Hoare triple {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,887 INFO L290 TraceCheckUtils]: 36: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {130521#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:32:05,887 INFO L290 TraceCheckUtils]: 35: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,888 INFO L290 TraceCheckUtils]: 34: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,888 INFO L290 TraceCheckUtils]: 33: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,888 INFO L290 TraceCheckUtils]: 32: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,888 INFO L290 TraceCheckUtils]: 31: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,889 INFO L290 TraceCheckUtils]: 30: Hoare triple {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,889 INFO L290 TraceCheckUtils]: 29: Hoare triple {130461#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {130520#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:32:05,889 INFO L272 TraceCheckUtils]: 28: Hoare triple {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:05,889 INFO L290 TraceCheckUtils]: 27: Hoare triple {130485#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {130486#(and (<= main_~n_stones1~0 5) (<= 5 main_~n_stones1~0))} is VALID [2022-04-27 22:32:05,890 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} {130461#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {130485#(and (<= 5 |main_#t~ret8|) (<= |main_#t~ret8| 5))} is VALID [2022-04-27 22:32:05,890 INFO L290 TraceCheckUtils]: 25: Hoare triple {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:05,890 INFO L290 TraceCheckUtils]: 24: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {130519#(and (<= 5 |correct_version_#res|) (<= |correct_version_#res| 5))} is VALID [2022-04-27 22:32:05,890 INFO L290 TraceCheckUtils]: 23: Hoare triple {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:05,891 INFO L290 TraceCheckUtils]: 22: Hoare triple {130517#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130518#(and (<= 5 correct_version_~y~0) (<= correct_version_~y~0 5))} is VALID [2022-04-27 22:32:05,891 INFO L290 TraceCheckUtils]: 21: Hoare triple {130516#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130517#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 5) (<= 5 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:32:05,891 INFO L290 TraceCheckUtils]: 20: Hoare triple {130515#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130516#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:32:05,892 INFO L290 TraceCheckUtils]: 19: Hoare triple {130514#(and (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130515#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 5) (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:32:05,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {130513#(and (<= 5 (+ (* correct_version_~j~0 5) correct_version_~y~0)) (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130514#(and (<= 5 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 5))} is VALID [2022-04-27 22:32:05,893 INFO L290 TraceCheckUtils]: 17: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {130513#(and (<= 5 (+ (* correct_version_~j~0 5) correct_version_~y~0)) (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 5))} is VALID [2022-04-27 22:32:05,893 INFO L290 TraceCheckUtils]: 16: Hoare triple {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,893 INFO L290 TraceCheckUtils]: 15: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {130512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:32:05,893 INFO L290 TraceCheckUtils]: 14: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,894 INFO L290 TraceCheckUtils]: 13: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,894 INFO L290 TraceCheckUtils]: 11: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,894 INFO L290 TraceCheckUtils]: 10: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,895 INFO L290 TraceCheckUtils]: 9: Hoare triple {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,895 INFO L290 TraceCheckUtils]: 8: Hoare triple {130461#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {130511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:32:05,895 INFO L272 TraceCheckUtils]: 7: Hoare triple {130461#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:05,895 INFO L290 TraceCheckUtils]: 6: Hoare triple {130461#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,895 INFO L290 TraceCheckUtils]: 5: Hoare triple {130461#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {130461#true} is VALID [2022-04-27 22:32:05,895 INFO L272 TraceCheckUtils]: 4: Hoare triple {130461#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,895 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {130461#true} {130461#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,895 INFO L290 TraceCheckUtils]: 2: Hoare triple {130461#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,895 INFO L290 TraceCheckUtils]: 1: Hoare triple {130461#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {130461#true} is VALID [2022-04-27 22:32:05,895 INFO L272 TraceCheckUtils]: 0: Hoare triple {130461#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130461#true} is VALID [2022-04-27 22:32:05,896 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 0 proven. 32 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 22:32:05,896 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [893555529] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:32:05,896 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:32:05,896 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 26, 26] total 41 [2022-04-27 22:32:05,896 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [693852241] [2022-04-27 22:32:05,896 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:32:05,896 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:32:05,896 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:32:05,897 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:05,922 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-27 22:32:05,922 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-04-27 22:32:05,922 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:32:05,923 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-04-27 22:32:05,923 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=1535, Unknown=0, NotChecked=0, Total=1640 [2022-04-27 22:32:05,923 INFO L87 Difference]: Start difference. First operand 580 states and 654 transitions. Second operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:11,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:11,614 INFO L93 Difference]: Finished difference Result 598 states and 675 transitions. [2022-04-27 22:32:11,615 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-27 22:32:11,620 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 53 [2022-04-27 22:32:11,620 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:32:11,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:11,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 86 transitions. [2022-04-27 22:32:11,621 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:11,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 86 transitions. [2022-04-27 22:32:11,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 86 transitions. [2022-04-27 22:32:11,693 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:32:11,711 INFO L225 Difference]: With dead ends: 598 [2022-04-27 22:32:11,711 INFO L226 Difference]: Without dead ends: 592 [2022-04-27 22:32:11,713 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 88 SyntacticMatches, 9 SemanticMatches, 64 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 767 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=261, Invalid=4029, Unknown=0, NotChecked=0, Total=4290 [2022-04-27 22:32:11,713 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 55 mSDsluCounter, 147 mSDsCounter, 0 mSdLazyCounter, 1596 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 1630 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 1596 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:32:11,714 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [56 Valid, 181 Invalid, 1630 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 1596 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 22:32:11,714 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 592 states. [2022-04-27 22:32:16,089 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 592 to 590. [2022-04-27 22:32:16,089 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:32:16,090 INFO L82 GeneralOperation]: Start isEquivalent. First operand 592 states. Second operand has 590 states, 512 states have (on average 1.1484375) internal successors, (588), 558 states have internal predecessors, (588), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (51), 26 states have call predecessors, (51), 26 states have call successors, (51) [2022-04-27 22:32:16,090 INFO L74 IsIncluded]: Start isIncluded. First operand 592 states. Second operand has 590 states, 512 states have (on average 1.1484375) internal successors, (588), 558 states have internal predecessors, (588), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (51), 26 states have call predecessors, (51), 26 states have call successors, (51) [2022-04-27 22:32:16,091 INFO L87 Difference]: Start difference. First operand 592 states. Second operand has 590 states, 512 states have (on average 1.1484375) internal successors, (588), 558 states have internal predecessors, (588), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (51), 26 states have call predecessors, (51), 26 states have call successors, (51) [2022-04-27 22:32:16,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:16,104 INFO L93 Difference]: Finished difference Result 592 states and 669 transitions. [2022-04-27 22:32:16,104 INFO L276 IsEmpty]: Start isEmpty. Operand 592 states and 669 transitions. [2022-04-27 22:32:16,106 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:32:16,106 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:32:16,106 INFO L74 IsIncluded]: Start isIncluded. First operand has 590 states, 512 states have (on average 1.1484375) internal successors, (588), 558 states have internal predecessors, (588), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (51), 26 states have call predecessors, (51), 26 states have call successors, (51) Second operand 592 states. [2022-04-27 22:32:16,107 INFO L87 Difference]: Start difference. First operand has 590 states, 512 states have (on average 1.1484375) internal successors, (588), 558 states have internal predecessors, (588), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (51), 26 states have call predecessors, (51), 26 states have call successors, (51) Second operand 592 states. [2022-04-27 22:32:16,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:16,120 INFO L93 Difference]: Finished difference Result 592 states and 669 transitions. [2022-04-27 22:32:16,120 INFO L276 IsEmpty]: Start isEmpty. Operand 592 states and 669 transitions. [2022-04-27 22:32:16,122 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:32:16,122 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:32:16,122 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:32:16,122 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:32:16,123 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 590 states, 512 states have (on average 1.1484375) internal successors, (588), 558 states have internal predecessors, (588), 28 states have call successors, (28), 5 states have call predecessors, (28), 49 states have return successors, (51), 26 states have call predecessors, (51), 26 states have call successors, (51) [2022-04-27 22:32:16,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 590 states to 590 states and 667 transitions. [2022-04-27 22:32:16,139 INFO L78 Accepts]: Start accepts. Automaton has 590 states and 667 transitions. Word has length 53 [2022-04-27 22:32:16,140 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:32:16,140 INFO L495 AbstractCegarLoop]: Abstraction has 590 states and 667 transitions. [2022-04-27 22:32:16,140 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 38 states have (on average 1.394736842105263) internal successors, (53), 35 states have internal predecessors, (53), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:32:16,140 INFO L276 IsEmpty]: Start isEmpty. Operand 590 states and 667 transitions. [2022-04-27 22:32:16,143 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-27 22:32:16,143 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:32:16,143 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 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-27 22:32:16,161 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (66)] Forceful destruction successful, exit code 0 [2022-04-27 22:32:16,359 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 66 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable74 [2022-04-27 22:32:16,371 INFO L420 AbstractCegarLoop]: === Iteration 76 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:32:16,371 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:32:16,371 INFO L85 PathProgramCache]: Analyzing trace with hash -735197027, now seen corresponding path program 66 times [2022-04-27 22:32:16,371 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:32:16,371 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [834868251] [2022-04-27 22:32:16,372 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:32:16,372 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:32:16,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:16,424 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:32:16,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:16,426 INFO L290 TraceCheckUtils]: 0: Hoare triple {133865#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {133820#true} is VALID [2022-04-27 22:32:16,426 INFO L290 TraceCheckUtils]: 1: Hoare triple {133820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:16,426 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {133820#true} {133820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:16,427 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:32:16,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:16,576 INFO L290 TraceCheckUtils]: 0: Hoare triple {133820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:32:16,576 INFO L290 TraceCheckUtils]: 1: Hoare triple {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:32:16,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:32:16,577 INFO L290 TraceCheckUtils]: 3: Hoare triple {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133867#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:32:16,578 INFO L290 TraceCheckUtils]: 4: Hoare triple {133867#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133868#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,578 INFO L290 TraceCheckUtils]: 5: Hoare triple {133868#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133869#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,579 INFO L290 TraceCheckUtils]: 6: Hoare triple {133869#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133870#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:32:16,579 INFO L290 TraceCheckUtils]: 7: Hoare triple {133870#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133871#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,580 INFO L290 TraceCheckUtils]: 8: Hoare triple {133871#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133872#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {133872#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133873#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} is VALID [2022-04-27 22:32:16,581 INFO L290 TraceCheckUtils]: 10: Hoare triple {133873#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133874#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,581 INFO L290 TraceCheckUtils]: 11: Hoare triple {133874#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133875#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:16,582 INFO L290 TraceCheckUtils]: 12: Hoare triple {133875#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,582 INFO L290 TraceCheckUtils]: 13: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,582 INFO L290 TraceCheckUtils]: 14: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,583 INFO L290 TraceCheckUtils]: 15: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,583 INFO L290 TraceCheckUtils]: 16: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,583 INFO L290 TraceCheckUtils]: 17: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,584 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} {133820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {133844#(<= main_~m~0 (* main_~a~0 9))} is VALID [2022-04-27 22:32:16,584 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:32:16,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:16,867 INFO L290 TraceCheckUtils]: 0: Hoare triple {133820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,867 INFO L290 TraceCheckUtils]: 1: Hoare triple {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,867 INFO L290 TraceCheckUtils]: 2: Hoare triple {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,868 INFO L290 TraceCheckUtils]: 3: Hoare triple {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133878#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:32:16,868 INFO L290 TraceCheckUtils]: 4: Hoare triple {133878#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133879#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,869 INFO L290 TraceCheckUtils]: 5: Hoare triple {133879#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133880#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,870 INFO L290 TraceCheckUtils]: 6: Hoare triple {133880#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133881#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:32:16,870 INFO L290 TraceCheckUtils]: 7: Hoare triple {133881#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133882#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:32:16,871 INFO L290 TraceCheckUtils]: 8: Hoare triple {133882#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133883#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {133883#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133884#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:32:16,872 INFO L290 TraceCheckUtils]: 10: Hoare triple {133884#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133885#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:32:16,872 INFO L290 TraceCheckUtils]: 11: Hoare triple {133885#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133886#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,873 INFO L290 TraceCheckUtils]: 12: Hoare triple {133886#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133887#(and (<= (+ (* |student_version_#in~a| 9) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,873 INFO L290 TraceCheckUtils]: 13: Hoare triple {133887#(and (<= (+ (* |student_version_#in~a| 9) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,873 INFO L290 TraceCheckUtils]: 14: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,874 INFO L290 TraceCheckUtils]: 15: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,874 INFO L290 TraceCheckUtils]: 16: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,874 INFO L290 TraceCheckUtils]: 17: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,875 INFO L290 TraceCheckUtils]: 18: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,875 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} {133844#(<= main_~m~0 (* main_~a~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {133821#false} is VALID [2022-04-27 22:32:16,876 INFO L272 TraceCheckUtils]: 0: Hoare triple {133820#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133865#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:32:16,876 INFO L290 TraceCheckUtils]: 1: Hoare triple {133865#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {133820#true} is VALID [2022-04-27 22:32:16,876 INFO L290 TraceCheckUtils]: 2: Hoare triple {133820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:16,876 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133820#true} {133820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:16,876 INFO L272 TraceCheckUtils]: 4: Hoare triple {133820#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:16,876 INFO L290 TraceCheckUtils]: 5: Hoare triple {133820#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:16,876 INFO L290 TraceCheckUtils]: 6: Hoare triple {133820#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:16,876 INFO L272 TraceCheckUtils]: 7: Hoare triple {133820#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:16,877 INFO L290 TraceCheckUtils]: 8: Hoare triple {133820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:32:16,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:32:16,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:32:16,878 INFO L290 TraceCheckUtils]: 11: Hoare triple {133866#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133867#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:32:16,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {133867#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133868#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,879 INFO L290 TraceCheckUtils]: 13: Hoare triple {133868#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133869#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,880 INFO L290 TraceCheckUtils]: 14: Hoare triple {133869#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133870#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:32:16,880 INFO L290 TraceCheckUtils]: 15: Hoare triple {133870#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133871#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,881 INFO L290 TraceCheckUtils]: 16: Hoare triple {133871#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133872#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,881 INFO L290 TraceCheckUtils]: 17: Hoare triple {133872#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133873#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} is VALID [2022-04-27 22:32:16,882 INFO L290 TraceCheckUtils]: 18: Hoare triple {133873#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133874#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:16,882 INFO L290 TraceCheckUtils]: 19: Hoare triple {133874#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133875#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:16,883 INFO L290 TraceCheckUtils]: 20: Hoare triple {133875#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,883 INFO L290 TraceCheckUtils]: 21: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,883 INFO L290 TraceCheckUtils]: 22: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,884 INFO L290 TraceCheckUtils]: 23: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,884 INFO L290 TraceCheckUtils]: 24: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,884 INFO L290 TraceCheckUtils]: 25: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:16,885 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} {133820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {133844#(<= main_~m~0 (* main_~a~0 9))} is VALID [2022-04-27 22:32:16,885 INFO L290 TraceCheckUtils]: 27: Hoare triple {133844#(<= main_~m~0 (* main_~a~0 9))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {133844#(<= main_~m~0 (* main_~a~0 9))} is VALID [2022-04-27 22:32:16,885 INFO L272 TraceCheckUtils]: 28: Hoare triple {133844#(<= main_~m~0 (* main_~a~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:16,886 INFO L290 TraceCheckUtils]: 29: Hoare triple {133820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,886 INFO L290 TraceCheckUtils]: 30: Hoare triple {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,886 INFO L290 TraceCheckUtils]: 31: Hoare triple {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,887 INFO L290 TraceCheckUtils]: 32: Hoare triple {133877#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133878#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:32:16,887 INFO L290 TraceCheckUtils]: 33: Hoare triple {133878#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133879#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,888 INFO L290 TraceCheckUtils]: 34: Hoare triple {133879#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133880#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,888 INFO L290 TraceCheckUtils]: 35: Hoare triple {133880#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133881#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:32:16,889 INFO L290 TraceCheckUtils]: 36: Hoare triple {133881#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133882#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:32:16,890 INFO L290 TraceCheckUtils]: 37: Hoare triple {133882#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133883#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,890 INFO L290 TraceCheckUtils]: 38: Hoare triple {133883#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133884#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:32:16,891 INFO L290 TraceCheckUtils]: 39: Hoare triple {133884#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133885#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:32:16,891 INFO L290 TraceCheckUtils]: 40: Hoare triple {133885#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133886#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,892 INFO L290 TraceCheckUtils]: 41: Hoare triple {133886#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133887#(and (<= (+ (* |student_version_#in~a| 9) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:32:16,892 INFO L290 TraceCheckUtils]: 42: Hoare triple {133887#(and (<= (+ (* |student_version_#in~a| 9) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,892 INFO L290 TraceCheckUtils]: 43: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,893 INFO L290 TraceCheckUtils]: 44: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,893 INFO L290 TraceCheckUtils]: 45: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,893 INFO L290 TraceCheckUtils]: 46: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,893 INFO L290 TraceCheckUtils]: 47: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:16,894 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} {133844#(<= main_~m~0 (* main_~a~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {133821#false} is VALID [2022-04-27 22:32:16,894 INFO L290 TraceCheckUtils]: 49: Hoare triple {133821#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {133821#false} is VALID [2022-04-27 22:32:16,894 INFO L272 TraceCheckUtils]: 50: Hoare triple {133821#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {133821#false} is VALID [2022-04-27 22:32:16,894 INFO L290 TraceCheckUtils]: 51: Hoare triple {133821#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {133821#false} is VALID [2022-04-27 22:32:16,894 INFO L290 TraceCheckUtils]: 52: Hoare triple {133821#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {133821#false} is VALID [2022-04-27 22:32:16,894 INFO L290 TraceCheckUtils]: 53: Hoare triple {133821#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133821#false} is VALID [2022-04-27 22:32:16,895 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:32:16,895 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:32:16,895 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [834868251] [2022-04-27 22:32:16,895 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [834868251] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:32:16,895 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1164494081] [2022-04-27 22:32:16,895 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:32:16,895 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:32:16,895 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:32:16,896 INFO L229 MonitoredProcess]: Starting monitored process 67 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:32:16,897 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (67)] Waiting until timeout for monitored process [2022-04-27 22:32:16,986 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-27 22:32:16,986 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:32:16,987 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-27 22:32:16,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:16,997 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:32:17,938 INFO L272 TraceCheckUtils]: 0: Hoare triple {133820#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:17,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {133820#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {133820#true} is VALID [2022-04-27 22:32:17,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {133820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:17,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133820#true} {133820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:17,938 INFO L272 TraceCheckUtils]: 4: Hoare triple {133820#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:17,938 INFO L290 TraceCheckUtils]: 5: Hoare triple {133820#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:17,938 INFO L290 TraceCheckUtils]: 6: Hoare triple {133820#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:17,938 INFO L272 TraceCheckUtils]: 7: Hoare triple {133820#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:17,939 INFO L290 TraceCheckUtils]: 8: Hoare triple {133820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {133916#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,939 INFO L290 TraceCheckUtils]: 9: Hoare triple {133916#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {133916#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,939 INFO L290 TraceCheckUtils]: 10: Hoare triple {133916#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {133916#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,940 INFO L290 TraceCheckUtils]: 11: Hoare triple {133916#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133926#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,940 INFO L290 TraceCheckUtils]: 12: Hoare triple {133926#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133930#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,940 INFO L290 TraceCheckUtils]: 13: Hoare triple {133930#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133934#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,941 INFO L290 TraceCheckUtils]: 14: Hoare triple {133934#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133938#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,941 INFO L290 TraceCheckUtils]: 15: Hoare triple {133938#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133942#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,942 INFO L290 TraceCheckUtils]: 16: Hoare triple {133942#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133946#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,942 INFO L290 TraceCheckUtils]: 17: Hoare triple {133946#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133950#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 7 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,943 INFO L290 TraceCheckUtils]: 18: Hoare triple {133950#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 7 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133954#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 8 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,943 INFO L290 TraceCheckUtils]: 19: Hoare triple {133954#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 8 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {133958#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 9)) |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,943 INFO L290 TraceCheckUtils]: 20: Hoare triple {133958#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 9)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,944 INFO L290 TraceCheckUtils]: 21: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,944 INFO L290 TraceCheckUtils]: 22: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,944 INFO L290 TraceCheckUtils]: 23: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,944 INFO L290 TraceCheckUtils]: 24: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,945 INFO L290 TraceCheckUtils]: 25: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:17,945 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} {133820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {133844#(<= main_~m~0 (* main_~a~0 9))} is VALID [2022-04-27 22:32:17,945 INFO L290 TraceCheckUtils]: 27: Hoare triple {133844#(<= main_~m~0 (* main_~a~0 9))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {133844#(<= main_~m~0 (* main_~a~0 9))} is VALID [2022-04-27 22:32:17,945 INFO L272 TraceCheckUtils]: 28: Hoare triple {133844#(<= main_~m~0 (* main_~a~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:17,946 INFO L290 TraceCheckUtils]: 29: Hoare triple {133820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {133989#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,946 INFO L290 TraceCheckUtils]: 30: Hoare triple {133989#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {133989#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,946 INFO L290 TraceCheckUtils]: 31: Hoare triple {133989#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {133989#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,947 INFO L290 TraceCheckUtils]: 32: Hoare triple {133989#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133999#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:32:17,947 INFO L290 TraceCheckUtils]: 33: Hoare triple {133999#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134003#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,947 INFO L290 TraceCheckUtils]: 34: Hoare triple {134003#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134007#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,948 INFO L290 TraceCheckUtils]: 35: Hoare triple {134007#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134011#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:32:17,948 INFO L290 TraceCheckUtils]: 36: Hoare triple {134011#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134015#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:32:17,949 INFO L290 TraceCheckUtils]: 37: Hoare triple {134015#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134019#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,949 INFO L290 TraceCheckUtils]: 38: Hoare triple {134019#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134023#(and (<= student_version_~m |student_version_#in~m|) (<= (* 7 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,950 INFO L290 TraceCheckUtils]: 39: Hoare triple {134023#(and (<= student_version_~m |student_version_#in~m|) (<= (* 7 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134027#(and (<= student_version_~m |student_version_#in~m|) (<= (* 8 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:32:17,950 INFO L290 TraceCheckUtils]: 40: Hoare triple {134027#(and (<= student_version_~m |student_version_#in~m|) (<= (* 8 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134031#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 9)))} is VALID [2022-04-27 22:32:17,950 INFO L290 TraceCheckUtils]: 41: Hoare triple {134031#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 9)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:17,951 INFO L290 TraceCheckUtils]: 42: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:17,951 INFO L290 TraceCheckUtils]: 43: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:17,951 INFO L290 TraceCheckUtils]: 44: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:17,951 INFO L290 TraceCheckUtils]: 45: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:17,951 INFO L290 TraceCheckUtils]: 46: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:17,952 INFO L290 TraceCheckUtils]: 47: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:17,952 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} {133844#(<= main_~m~0 (* main_~a~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {133821#false} is VALID [2022-04-27 22:32:17,952 INFO L290 TraceCheckUtils]: 49: Hoare triple {133821#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {133821#false} is VALID [2022-04-27 22:32:17,952 INFO L272 TraceCheckUtils]: 50: Hoare triple {133821#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {133821#false} is VALID [2022-04-27 22:32:17,952 INFO L290 TraceCheckUtils]: 51: Hoare triple {133821#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {133821#false} is VALID [2022-04-27 22:32:17,952 INFO L290 TraceCheckUtils]: 52: Hoare triple {133821#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {133821#false} is VALID [2022-04-27 22:32:17,953 INFO L290 TraceCheckUtils]: 53: Hoare triple {133821#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133821#false} is VALID [2022-04-27 22:32:17,953 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:32:17,953 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:32:19,694 INFO L290 TraceCheckUtils]: 53: Hoare triple {133821#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133821#false} is VALID [2022-04-27 22:32:19,694 INFO L290 TraceCheckUtils]: 52: Hoare triple {133821#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {133821#false} is VALID [2022-04-27 22:32:19,694 INFO L290 TraceCheckUtils]: 51: Hoare triple {133821#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {133821#false} is VALID [2022-04-27 22:32:19,694 INFO L272 TraceCheckUtils]: 50: Hoare triple {133821#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {133821#false} is VALID [2022-04-27 22:32:19,695 INFO L290 TraceCheckUtils]: 49: Hoare triple {133821#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {133821#false} is VALID [2022-04-27 22:32:19,695 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} {133844#(<= main_~m~0 (* main_~a~0 9))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {133821#false} is VALID [2022-04-27 22:32:19,695 INFO L290 TraceCheckUtils]: 47: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:19,695 INFO L290 TraceCheckUtils]: 46: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:19,696 INFO L290 TraceCheckUtils]: 45: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:19,696 INFO L290 TraceCheckUtils]: 44: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:19,696 INFO L290 TraceCheckUtils]: 43: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:19,696 INFO L290 TraceCheckUtils]: 42: Hoare triple {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:19,696 INFO L290 TraceCheckUtils]: 41: Hoare triple {134110#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {133888#(<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:32:19,697 INFO L290 TraceCheckUtils]: 40: Hoare triple {134114#(or (<= student_version_~m (+ student_version_~l~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134110#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:32:19,697 INFO L290 TraceCheckUtils]: 39: Hoare triple {134118#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134114#(or (<= student_version_~m (+ student_version_~l~1 student_version_~a)) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:32:19,698 INFO L290 TraceCheckUtils]: 38: Hoare triple {134122#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134118#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:32:19,698 INFO L290 TraceCheckUtils]: 37: Hoare triple {134126#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134122#(or (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:32:19,699 INFO L290 TraceCheckUtils]: 36: Hoare triple {134130#(or (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134126#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:32:19,699 INFO L290 TraceCheckUtils]: 35: Hoare triple {134134#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134130#(or (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:32:19,699 INFO L290 TraceCheckUtils]: 34: Hoare triple {134138#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134134#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:32:19,700 INFO L290 TraceCheckUtils]: 33: Hoare triple {134142#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134138#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:32:19,700 INFO L290 TraceCheckUtils]: 32: Hoare triple {134146#(or (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {134142#(or (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:32:19,701 INFO L290 TraceCheckUtils]: 31: Hoare triple {134146#(or (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {134146#(or (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:32:19,701 INFO L290 TraceCheckUtils]: 30: Hoare triple {134146#(or (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {134146#(or (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:32:19,701 INFO L290 TraceCheckUtils]: 29: Hoare triple {133820#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {134146#(or (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))) (<= (+ (* |student_version_#in~a| 9) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:32:19,701 INFO L272 TraceCheckUtils]: 28: Hoare triple {133844#(<= main_~m~0 (* main_~a~0 9))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:19,702 INFO L290 TraceCheckUtils]: 27: Hoare triple {133844#(<= main_~m~0 (* main_~a~0 9))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {133844#(<= main_~m~0 (* main_~a~0 9))} is VALID [2022-04-27 22:32:19,702 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} {133820#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {133844#(<= main_~m~0 (* main_~a~0 9))} is VALID [2022-04-27 22:32:19,702 INFO L290 TraceCheckUtils]: 25: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:19,702 INFO L290 TraceCheckUtils]: 24: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:19,703 INFO L290 TraceCheckUtils]: 23: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:19,703 INFO L290 TraceCheckUtils]: 22: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:19,703 INFO L290 TraceCheckUtils]: 21: Hoare triple {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:19,703 INFO L290 TraceCheckUtils]: 20: Hoare triple {134183#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {133876#(<= |correct_version_#in~m| (* 9 |correct_version_#in~a|))} is VALID [2022-04-27 22:32:19,704 INFO L290 TraceCheckUtils]: 19: Hoare triple {134187#(or (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134183#(or (< correct_version_~l~0 correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,704 INFO L290 TraceCheckUtils]: 18: Hoare triple {134191#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134187#(or (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:32:19,705 INFO L290 TraceCheckUtils]: 17: Hoare triple {134195#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134191#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,705 INFO L290 TraceCheckUtils]: 16: Hoare triple {134199#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134195#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,705 INFO L290 TraceCheckUtils]: 15: Hoare triple {134203#(or (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134199#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,706 INFO L290 TraceCheckUtils]: 14: Hoare triple {134207#(or (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134203#(or (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,706 INFO L290 TraceCheckUtils]: 13: Hoare triple {134211#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134207#(or (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:32:19,707 INFO L290 TraceCheckUtils]: 12: Hoare triple {134215#(or (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134211#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,707 INFO L290 TraceCheckUtils]: 11: Hoare triple {134219#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {134215#(or (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:32:19,707 INFO L290 TraceCheckUtils]: 10: Hoare triple {134219#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {134219#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,708 INFO L290 TraceCheckUtils]: 9: Hoare triple {134219#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {134219#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,708 INFO L290 TraceCheckUtils]: 8: Hoare triple {133820#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {134219#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* 9 |correct_version_#in~a|)))} is VALID [2022-04-27 22:32:19,708 INFO L272 TraceCheckUtils]: 7: Hoare triple {133820#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:19,708 INFO L290 TraceCheckUtils]: 6: Hoare triple {133820#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:19,708 INFO L290 TraceCheckUtils]: 5: Hoare triple {133820#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {133820#true} is VALID [2022-04-27 22:32:19,708 INFO L272 TraceCheckUtils]: 4: Hoare triple {133820#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:19,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133820#true} {133820#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:19,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {133820#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:19,709 INFO L290 TraceCheckUtils]: 1: Hoare triple {133820#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {133820#true} is VALID [2022-04-27 22:32:19,709 INFO L272 TraceCheckUtils]: 0: Hoare triple {133820#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133820#true} is VALID [2022-04-27 22:32:19,709 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 10 proven. 90 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:32:19,710 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1164494081] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:32:19,710 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:32:19,710 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 25, 25] total 67 [2022-04-27 22:32:19,710 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1692045629] [2022-04-27 22:32:19,710 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:32:19,710 INFO L78 Accepts]: Start accepts. Automaton has has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 54 [2022-04-27 22:32:19,710 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:32:19,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:19,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:32:19,756 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 67 states [2022-04-27 22:32:19,756 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:32:19,756 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 67 interpolants. [2022-04-27 22:32:19,757 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=222, Invalid=4200, Unknown=0, NotChecked=0, Total=4422 [2022-04-27 22:32:19,757 INFO L87 Difference]: Start difference. First operand 590 states and 667 transitions. Second operand has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:34,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:34,449 INFO L93 Difference]: Finished difference Result 682 states and 776 transitions. [2022-04-27 22:32:34,449 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 43 states. [2022-04-27 22:32:34,449 INFO L78 Accepts]: Start accepts. Automaton has has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 54 [2022-04-27 22:32:34,449 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:32:34,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:34,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 194 transitions. [2022-04-27 22:32:34,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:34,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 194 transitions. [2022-04-27 22:32:34,452 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 43 states and 194 transitions. [2022-04-27 22:32:34,582 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 194 edges. 194 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:32:34,605 INFO L225 Difference]: With dead ends: 682 [2022-04-27 22:32:34,605 INFO L226 Difference]: Without dead ends: 668 [2022-04-27 22:32:34,608 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 67 SyntacticMatches, 5 SemanticMatches, 105 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1612 ImplicationChecksByTransitivity, 2.9s TimeCoverageRelationStatistics Valid=740, Invalid=10602, Unknown=0, NotChecked=0, Total=11342 [2022-04-27 22:32:34,608 INFO L413 NwaCegarLoop]: 114 mSDtfsCounter, 1279 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 5640 mSolverCounterSat, 144 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1284 SdHoareTripleChecker+Valid, 286 SdHoareTripleChecker+Invalid, 5784 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 144 IncrementalHoareTripleChecker+Valid, 5640 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:32:34,608 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [1284 Valid, 286 Invalid, 5784 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [144 Valid, 5640 Invalid, 0 Unknown, 0 Unchecked, 4.0s Time] [2022-04-27 22:32:34,609 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 668 states. [2022-04-27 22:32:38,502 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 668 to 659. [2022-04-27 22:32:38,502 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:32:38,503 INFO L82 GeneralOperation]: Start isEquivalent. First operand 668 states. Second operand has 659 states, 572 states have (on average 1.1468531468531469) internal successors, (656), 624 states have internal predecessors, (656), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (60), 29 states have call predecessors, (60), 29 states have call successors, (60) [2022-04-27 22:32:38,503 INFO L74 IsIncluded]: Start isIncluded. First operand 668 states. Second operand has 659 states, 572 states have (on average 1.1468531468531469) internal successors, (656), 624 states have internal predecessors, (656), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (60), 29 states have call predecessors, (60), 29 states have call successors, (60) [2022-04-27 22:32:38,504 INFO L87 Difference]: Start difference. First operand 668 states. Second operand has 659 states, 572 states have (on average 1.1468531468531469) internal successors, (656), 624 states have internal predecessors, (656), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (60), 29 states have call predecessors, (60), 29 states have call successors, (60) [2022-04-27 22:32:38,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:38,528 INFO L93 Difference]: Finished difference Result 668 states and 757 transitions. [2022-04-27 22:32:38,528 INFO L276 IsEmpty]: Start isEmpty. Operand 668 states and 757 transitions. [2022-04-27 22:32:38,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:32:38,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:32:38,534 INFO L74 IsIncluded]: Start isIncluded. First operand has 659 states, 572 states have (on average 1.1468531468531469) internal successors, (656), 624 states have internal predecessors, (656), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (60), 29 states have call predecessors, (60), 29 states have call successors, (60) Second operand 668 states. [2022-04-27 22:32:38,534 INFO L87 Difference]: Start difference. First operand has 659 states, 572 states have (on average 1.1468531468531469) internal successors, (656), 624 states have internal predecessors, (656), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (60), 29 states have call predecessors, (60), 29 states have call successors, (60) Second operand 668 states. [2022-04-27 22:32:38,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:38,559 INFO L93 Difference]: Finished difference Result 668 states and 757 transitions. [2022-04-27 22:32:38,559 INFO L276 IsEmpty]: Start isEmpty. Operand 668 states and 757 transitions. [2022-04-27 22:32:38,563 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:32:38,563 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:32:38,563 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:32:38,563 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:32:38,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 659 states, 572 states have (on average 1.1468531468531469) internal successors, (656), 624 states have internal predecessors, (656), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (60), 29 states have call predecessors, (60), 29 states have call successors, (60) [2022-04-27 22:32:38,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 659 states to 659 states and 747 transitions. [2022-04-27 22:32:38,594 INFO L78 Accepts]: Start accepts. Automaton has 659 states and 747 transitions. Word has length 54 [2022-04-27 22:32:38,594 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:32:38,594 INFO L495 AbstractCegarLoop]: Abstraction has 659 states and 747 transitions. [2022-04-27 22:32:38,594 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:38,594 INFO L276 IsEmpty]: Start isEmpty. Operand 659 states and 747 transitions. [2022-04-27 22:32:38,599 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-27 22:32:38,599 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:32:38,599 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 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-27 22:32:38,623 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (67)] Forceful destruction successful, exit code 0 [2022-04-27 22:32:38,812 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 67 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable75 [2022-04-27 22:32:38,813 INFO L420 AbstractCegarLoop]: === Iteration 77 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:32:38,813 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:32:38,813 INFO L85 PathProgramCache]: Analyzing trace with hash 1400179859, now seen corresponding path program 67 times [2022-04-27 22:32:38,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:32:38,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [23898790] [2022-04-27 22:32:38,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:32:38,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:32:38,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:38,850 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:32:38,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:38,852 INFO L290 TraceCheckUtils]: 0: Hoare triple {137666#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {137621#true} is VALID [2022-04-27 22:32:38,852 INFO L290 TraceCheckUtils]: 1: Hoare triple {137621#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:38,852 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {137621#true} {137621#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:38,853 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:32:38,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:39,004 INFO L290 TraceCheckUtils]: 0: Hoare triple {137621#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,004 INFO L290 TraceCheckUtils]: 1: Hoare triple {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,005 INFO L290 TraceCheckUtils]: 3: Hoare triple {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137668#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,006 INFO L290 TraceCheckUtils]: 4: Hoare triple {137668#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137669#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {137669#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137670#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,006 INFO L290 TraceCheckUtils]: 6: Hoare triple {137670#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137671#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {137671#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137672#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:32:39,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {137672#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137673#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,008 INFO L290 TraceCheckUtils]: 9: Hoare triple {137673#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137674#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,008 INFO L290 TraceCheckUtils]: 10: Hoare triple {137674#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137675#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:32:39,009 INFO L290 TraceCheckUtils]: 11: Hoare triple {137675#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137676#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,009 INFO L290 TraceCheckUtils]: 12: Hoare triple {137676#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137677#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 9 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:32:39,009 INFO L290 TraceCheckUtils]: 13: Hoare triple {137677#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 9 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,009 INFO L290 TraceCheckUtils]: 14: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,010 INFO L290 TraceCheckUtils]: 15: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,010 INFO L290 TraceCheckUtils]: 16: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,010 INFO L290 TraceCheckUtils]: 17: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,010 INFO L290 TraceCheckUtils]: 18: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,011 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {137621#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} is VALID [2022-04-27 22:32:39,011 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:32:39,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:39,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {137621#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:32:39,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:32:39,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:32:39,186 INFO L290 TraceCheckUtils]: 3: Hoare triple {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137680#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:32:39,186 INFO L290 TraceCheckUtils]: 4: Hoare triple {137680#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137681#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:32:39,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {137681#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137682#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:32:39,187 INFO L290 TraceCheckUtils]: 6: Hoare triple {137682#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137683#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:32:39,188 INFO L290 TraceCheckUtils]: 7: Hoare triple {137683#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137684#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:32:39,188 INFO L290 TraceCheckUtils]: 8: Hoare triple {137684#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137685#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:32:39,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {137685#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137686#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:32:39,189 INFO L290 TraceCheckUtils]: 10: Hoare triple {137686#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137687#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} is VALID [2022-04-27 22:32:39,189 INFO L290 TraceCheckUtils]: 11: Hoare triple {137687#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137688#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 9)))} is VALID [2022-04-27 22:32:39,190 INFO L290 TraceCheckUtils]: 12: Hoare triple {137688#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 9)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,190 INFO L290 TraceCheckUtils]: 13: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,190 INFO L290 TraceCheckUtils]: 15: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,190 INFO L290 TraceCheckUtils]: 16: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,191 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {137622#false} is VALID [2022-04-27 22:32:39,192 INFO L272 TraceCheckUtils]: 0: Hoare triple {137621#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137666#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:32:39,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {137666#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {137621#true} is VALID [2022-04-27 22:32:39,192 INFO L290 TraceCheckUtils]: 2: Hoare triple {137621#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:39,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {137621#true} {137621#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:39,192 INFO L272 TraceCheckUtils]: 4: Hoare triple {137621#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:39,192 INFO L290 TraceCheckUtils]: 5: Hoare triple {137621#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:39,192 INFO L290 TraceCheckUtils]: 6: Hoare triple {137621#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:39,192 INFO L272 TraceCheckUtils]: 7: Hoare triple {137621#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:39,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {137621#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,193 INFO L290 TraceCheckUtils]: 9: Hoare triple {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,193 INFO L290 TraceCheckUtils]: 10: Hoare triple {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,193 INFO L290 TraceCheckUtils]: 11: Hoare triple {137667#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137668#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,194 INFO L290 TraceCheckUtils]: 12: Hoare triple {137668#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137669#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,194 INFO L290 TraceCheckUtils]: 13: Hoare triple {137669#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137670#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,195 INFO L290 TraceCheckUtils]: 14: Hoare triple {137670#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137671#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,195 INFO L290 TraceCheckUtils]: 15: Hoare triple {137671#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137672#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:32:39,195 INFO L290 TraceCheckUtils]: 16: Hoare triple {137672#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137673#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,196 INFO L290 TraceCheckUtils]: 17: Hoare triple {137673#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137674#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,196 INFO L290 TraceCheckUtils]: 18: Hoare triple {137674#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137675#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:32:39,197 INFO L290 TraceCheckUtils]: 19: Hoare triple {137675#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137676#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:39,197 INFO L290 TraceCheckUtils]: 20: Hoare triple {137676#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137677#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 9 |correct_version_#in~a|) 1) correct_version_~m))} is VALID [2022-04-27 22:32:39,197 INFO L290 TraceCheckUtils]: 21: Hoare triple {137677#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* 9 |correct_version_#in~a|) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,198 INFO L290 TraceCheckUtils]: 22: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,198 INFO L290 TraceCheckUtils]: 23: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,198 INFO L290 TraceCheckUtils]: 24: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,198 INFO L290 TraceCheckUtils]: 25: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,198 INFO L290 TraceCheckUtils]: 26: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:39,199 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {137621#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} is VALID [2022-04-27 22:32:39,199 INFO L290 TraceCheckUtils]: 28: Hoare triple {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} is VALID [2022-04-27 22:32:39,199 INFO L272 TraceCheckUtils]: 29: Hoare triple {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:39,200 INFO L290 TraceCheckUtils]: 30: Hoare triple {137621#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:32:39,200 INFO L290 TraceCheckUtils]: 31: Hoare triple {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:32:39,200 INFO L290 TraceCheckUtils]: 32: Hoare triple {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:32:39,201 INFO L290 TraceCheckUtils]: 33: Hoare triple {137679#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137680#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:32:39,201 INFO L290 TraceCheckUtils]: 34: Hoare triple {137680#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137681#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:32:39,201 INFO L290 TraceCheckUtils]: 35: Hoare triple {137681#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137682#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:32:39,202 INFO L290 TraceCheckUtils]: 36: Hoare triple {137682#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137683#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:32:39,202 INFO L290 TraceCheckUtils]: 37: Hoare triple {137683#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137684#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:32:39,203 INFO L290 TraceCheckUtils]: 38: Hoare triple {137684#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137685#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:32:39,203 INFO L290 TraceCheckUtils]: 39: Hoare triple {137685#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137686#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:32:39,204 INFO L290 TraceCheckUtils]: 40: Hoare triple {137686#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137687#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} is VALID [2022-04-27 22:32:39,204 INFO L290 TraceCheckUtils]: 41: Hoare triple {137687#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137688#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 9)))} is VALID [2022-04-27 22:32:39,204 INFO L290 TraceCheckUtils]: 42: Hoare triple {137688#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 9)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,204 INFO L290 TraceCheckUtils]: 43: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,205 INFO L290 TraceCheckUtils]: 44: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,205 INFO L290 TraceCheckUtils]: 45: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,205 INFO L290 TraceCheckUtils]: 46: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,205 INFO L290 TraceCheckUtils]: 47: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:39,206 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {137622#false} is VALID [2022-04-27 22:32:39,206 INFO L290 TraceCheckUtils]: 49: Hoare triple {137622#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {137622#false} is VALID [2022-04-27 22:32:39,206 INFO L272 TraceCheckUtils]: 50: Hoare triple {137622#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {137622#false} is VALID [2022-04-27 22:32:39,206 INFO L290 TraceCheckUtils]: 51: Hoare triple {137622#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {137622#false} is VALID [2022-04-27 22:32:39,206 INFO L290 TraceCheckUtils]: 52: Hoare triple {137622#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {137622#false} is VALID [2022-04-27 22:32:39,206 INFO L290 TraceCheckUtils]: 53: Hoare triple {137622#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137622#false} is VALID [2022-04-27 22:32:39,206 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:32:39,206 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:32:39,206 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [23898790] [2022-04-27 22:32:39,207 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [23898790] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:32:39,207 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1138620470] [2022-04-27 22:32:39,207 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:32:39,207 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:32:39,207 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:32:39,208 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:32:39,209 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (68)] Waiting until timeout for monitored process [2022-04-27 22:32:39,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:39,299 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-27 22:32:39,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:32:39,311 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:32:40,493 INFO L272 TraceCheckUtils]: 0: Hoare triple {137621#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:40,493 INFO L290 TraceCheckUtils]: 1: Hoare triple {137621#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {137621#true} is VALID [2022-04-27 22:32:40,493 INFO L290 TraceCheckUtils]: 2: Hoare triple {137621#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:40,493 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {137621#true} {137621#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:40,493 INFO L272 TraceCheckUtils]: 4: Hoare triple {137621#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:40,493 INFO L290 TraceCheckUtils]: 5: Hoare triple {137621#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:40,493 INFO L290 TraceCheckUtils]: 6: Hoare triple {137621#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:40,493 INFO L272 TraceCheckUtils]: 7: Hoare triple {137621#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:40,494 INFO L290 TraceCheckUtils]: 8: Hoare triple {137621#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {137717#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,494 INFO L290 TraceCheckUtils]: 9: Hoare triple {137717#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {137717#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,495 INFO L290 TraceCheckUtils]: 10: Hoare triple {137717#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {137717#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,495 INFO L290 TraceCheckUtils]: 11: Hoare triple {137717#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137727#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,496 INFO L290 TraceCheckUtils]: 12: Hoare triple {137727#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137731#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,496 INFO L290 TraceCheckUtils]: 13: Hoare triple {137731#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137735#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,497 INFO L290 TraceCheckUtils]: 14: Hoare triple {137735#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137739#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,497 INFO L290 TraceCheckUtils]: 15: Hoare triple {137739#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137743#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:32:40,498 INFO L290 TraceCheckUtils]: 16: Hoare triple {137743#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137747#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,498 INFO L290 TraceCheckUtils]: 17: Hoare triple {137747#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137751#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 7 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:32:40,499 INFO L290 TraceCheckUtils]: 18: Hoare triple {137751#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 7 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137755#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:32:40,499 INFO L290 TraceCheckUtils]: 19: Hoare triple {137755#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137759#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 9)))} is VALID [2022-04-27 22:32:40,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {137759#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 9)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:40,500 INFO L290 TraceCheckUtils]: 21: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:40,501 INFO L290 TraceCheckUtils]: 22: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:40,501 INFO L290 TraceCheckUtils]: 23: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:40,501 INFO L290 TraceCheckUtils]: 24: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:40,502 INFO L290 TraceCheckUtils]: 25: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:40,502 INFO L290 TraceCheckUtils]: 26: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:40,503 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {137621#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} is VALID [2022-04-27 22:32:40,503 INFO L290 TraceCheckUtils]: 28: Hoare triple {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} is VALID [2022-04-27 22:32:40,503 INFO L272 TraceCheckUtils]: 29: Hoare triple {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:40,503 INFO L290 TraceCheckUtils]: 30: Hoare triple {137621#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {137793#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:32:40,504 INFO L290 TraceCheckUtils]: 31: Hoare triple {137793#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {137793#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:32:40,504 INFO L290 TraceCheckUtils]: 32: Hoare triple {137793#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {137793#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:32:40,505 INFO L290 TraceCheckUtils]: 33: Hoare triple {137793#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137803#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:32:40,505 INFO L290 TraceCheckUtils]: 34: Hoare triple {137803#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137807#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:32:40,506 INFO L290 TraceCheckUtils]: 35: Hoare triple {137807#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137811#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:32:40,506 INFO L290 TraceCheckUtils]: 36: Hoare triple {137811#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137815#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:32:40,507 INFO L290 TraceCheckUtils]: 37: Hoare triple {137815#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137819#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:32:40,507 INFO L290 TraceCheckUtils]: 38: Hoare triple {137819#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137823#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:32:40,508 INFO L290 TraceCheckUtils]: 39: Hoare triple {137823#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137827#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:32:40,508 INFO L290 TraceCheckUtils]: 40: Hoare triple {137827#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137831#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 8 student_version_~a)))} is VALID [2022-04-27 22:32:40,509 INFO L290 TraceCheckUtils]: 41: Hoare triple {137831#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 8 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137835#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 9)) |student_version_#in~a|))} is VALID [2022-04-27 22:32:40,509 INFO L290 TraceCheckUtils]: 42: Hoare triple {137835#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 9)) |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:40,510 INFO L290 TraceCheckUtils]: 43: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:40,510 INFO L290 TraceCheckUtils]: 44: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:40,510 INFO L290 TraceCheckUtils]: 45: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:40,510 INFO L290 TraceCheckUtils]: 46: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:40,511 INFO L290 TraceCheckUtils]: 47: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:40,511 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {137622#false} is VALID [2022-04-27 22:32:40,512 INFO L290 TraceCheckUtils]: 49: Hoare triple {137622#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {137622#false} is VALID [2022-04-27 22:32:40,512 INFO L272 TraceCheckUtils]: 50: Hoare triple {137622#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {137622#false} is VALID [2022-04-27 22:32:40,512 INFO L290 TraceCheckUtils]: 51: Hoare triple {137622#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {137622#false} is VALID [2022-04-27 22:32:40,512 INFO L290 TraceCheckUtils]: 52: Hoare triple {137622#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {137622#false} is VALID [2022-04-27 22:32:40,512 INFO L290 TraceCheckUtils]: 53: Hoare triple {137622#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137622#false} is VALID [2022-04-27 22:32:40,512 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 0 proven. 100 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:32:40,512 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:32:43,002 INFO L290 TraceCheckUtils]: 53: Hoare triple {137622#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137622#false} is VALID [2022-04-27 22:32:43,002 INFO L290 TraceCheckUtils]: 52: Hoare triple {137622#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {137622#false} is VALID [2022-04-27 22:32:43,002 INFO L290 TraceCheckUtils]: 51: Hoare triple {137622#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {137622#false} is VALID [2022-04-27 22:32:43,002 INFO L272 TraceCheckUtils]: 50: Hoare triple {137622#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {137622#false} is VALID [2022-04-27 22:32:43,002 INFO L290 TraceCheckUtils]: 49: Hoare triple {137622#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {137622#false} is VALID [2022-04-27 22:32:43,003 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {137622#false} is VALID [2022-04-27 22:32:43,003 INFO L290 TraceCheckUtils]: 47: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:43,003 INFO L290 TraceCheckUtils]: 46: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:43,004 INFO L290 TraceCheckUtils]: 45: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:43,004 INFO L290 TraceCheckUtils]: 44: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:43,004 INFO L290 TraceCheckUtils]: 43: Hoare triple {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:43,004 INFO L290 TraceCheckUtils]: 42: Hoare triple {137908#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {137689#(<= |student_version_#in~m| (* |student_version_#in~a| 9))} is VALID [2022-04-27 22:32:43,005 INFO L290 TraceCheckUtils]: 41: Hoare triple {137912#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137908#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:32:43,005 INFO L290 TraceCheckUtils]: 40: Hoare triple {137916#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137912#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:32:43,006 INFO L290 TraceCheckUtils]: 39: Hoare triple {137920#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137916#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:32:43,006 INFO L290 TraceCheckUtils]: 38: Hoare triple {137924#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137920#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:32:43,007 INFO L290 TraceCheckUtils]: 37: Hoare triple {137928#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137924#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:32:43,007 INFO L290 TraceCheckUtils]: 36: Hoare triple {137932#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137928#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:32:43,008 INFO L290 TraceCheckUtils]: 35: Hoare triple {137936#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137932#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:32:43,008 INFO L290 TraceCheckUtils]: 34: Hoare triple {137940#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137936#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:32:43,009 INFO L290 TraceCheckUtils]: 33: Hoare triple {137944#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {137940#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:32:43,009 INFO L290 TraceCheckUtils]: 32: Hoare triple {137944#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {137944#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:32:43,009 INFO L290 TraceCheckUtils]: 31: Hoare triple {137944#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {137944#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:32:43,010 INFO L290 TraceCheckUtils]: 30: Hoare triple {137621#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {137944#(or (<= |student_version_#in~m| (* |student_version_#in~a| 9)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:32:43,010 INFO L272 TraceCheckUtils]: 29: Hoare triple {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:43,010 INFO L290 TraceCheckUtils]: 28: Hoare triple {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} is VALID [2022-04-27 22:32:43,011 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} {137621#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {137646#(<= (+ (* main_~a~0 9) 1) main_~m~0)} is VALID [2022-04-27 22:32:43,011 INFO L290 TraceCheckUtils]: 26: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:43,011 INFO L290 TraceCheckUtils]: 25: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:43,012 INFO L290 TraceCheckUtils]: 24: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:43,012 INFO L290 TraceCheckUtils]: 23: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:43,012 INFO L290 TraceCheckUtils]: 22: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:43,012 INFO L290 TraceCheckUtils]: 21: Hoare triple {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:43,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {137984#(or (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137678#(<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:32:43,013 INFO L290 TraceCheckUtils]: 19: Hoare triple {137988#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137984#(or (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:32:43,014 INFO L290 TraceCheckUtils]: 18: Hoare triple {137992#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137988#(or (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,014 INFO L290 TraceCheckUtils]: 17: Hoare triple {137996#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137992#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,015 INFO L290 TraceCheckUtils]: 16: Hoare triple {138000#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {137996#(or (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,015 INFO L290 TraceCheckUtils]: 15: Hoare triple {138004#(or (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {138000#(or (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,016 INFO L290 TraceCheckUtils]: 14: Hoare triple {138008#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {138004#(or (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,016 INFO L290 TraceCheckUtils]: 13: Hoare triple {138012#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {138008#(or (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {138016#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {138012#(or (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,017 INFO L290 TraceCheckUtils]: 11: Hoare triple {138020#(or (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {138016#(or (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,017 INFO L290 TraceCheckUtils]: 10: Hoare triple {138020#(or (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {138020#(or (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,018 INFO L290 TraceCheckUtils]: 9: Hoare triple {138020#(or (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {138020#(or (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,018 INFO L290 TraceCheckUtils]: 8: Hoare triple {137621#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {138020#(or (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)) (<= (+ (* 9 |correct_version_#in~a|) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:32:43,018 INFO L272 TraceCheckUtils]: 7: Hoare triple {137621#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:43,018 INFO L290 TraceCheckUtils]: 6: Hoare triple {137621#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:43,018 INFO L290 TraceCheckUtils]: 5: Hoare triple {137621#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {137621#true} is VALID [2022-04-27 22:32:43,019 INFO L272 TraceCheckUtils]: 4: Hoare triple {137621#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:43,019 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {137621#true} {137621#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:43,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {137621#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:43,019 INFO L290 TraceCheckUtils]: 1: Hoare triple {137621#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {137621#true} is VALID [2022-04-27 22:32:43,019 INFO L272 TraceCheckUtils]: 0: Hoare triple {137621#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {137621#true} is VALID [2022-04-27 22:32:43,019 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 10 proven. 90 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:32:43,019 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1138620470] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:32:43,019 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:32:43,019 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 25, 25] total 67 [2022-04-27 22:32:43,019 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [823696207] [2022-04-27 22:32:43,019 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:32:43,020 INFO L78 Accepts]: Start accepts. Automaton has has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 54 [2022-04-27 22:32:43,020 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:32:43,020 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:43,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:32:43,081 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 67 states [2022-04-27 22:32:43,082 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:32:43,082 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 67 interpolants. [2022-04-27 22:32:43,082 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=222, Invalid=4200, Unknown=0, NotChecked=0, Total=4422 [2022-04-27 22:32:43,082 INFO L87 Difference]: Start difference. First operand 659 states and 747 transitions. Second operand has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:57,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:32:57,225 INFO L93 Difference]: Finished difference Result 674 states and 762 transitions. [2022-04-27 22:32:57,225 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 43 states. [2022-04-27 22:32:57,226 INFO L78 Accepts]: Start accepts. Automaton has has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 54 [2022-04-27 22:32:57,226 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:32:57,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:57,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 193 transitions. [2022-04-27 22:32:57,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:32:57,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 193 transitions. [2022-04-27 22:32:57,228 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 43 states and 193 transitions. [2022-04-27 22:32:57,354 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 193 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:32:57,377 INFO L225 Difference]: With dead ends: 674 [2022-04-27 22:32:57,377 INFO L226 Difference]: Without dead ends: 662 [2022-04-27 22:32:57,380 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 105 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1625 ImplicationChecksByTransitivity, 3.0s TimeCoverageRelationStatistics Valid=740, Invalid=10602, Unknown=0, NotChecked=0, Total=11342 [2022-04-27 22:32:57,380 INFO L413 NwaCegarLoop]: 116 mSDtfsCounter, 1284 mSDsluCounter, 167 mSDsCounter, 0 mSdLazyCounter, 5492 mSolverCounterSat, 127 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1303 SdHoareTripleChecker+Valid, 283 SdHoareTripleChecker+Invalid, 5619 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 127 IncrementalHoareTripleChecker+Valid, 5492 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:32:57,380 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [1303 Valid, 283 Invalid, 5619 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [127 Valid, 5492 Invalid, 0 Unknown, 0 Unchecked, 3.7s Time] [2022-04-27 22:32:57,381 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 662 states. [2022-04-27 22:33:02,691 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 662 to 660. [2022-04-27 22:33:02,692 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:33:02,692 INFO L82 GeneralOperation]: Start isEquivalent. First operand 662 states. Second operand has 660 states, 573 states have (on average 1.1465968586387434) internal successors, (657), 625 states have internal predecessors, (657), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:02,693 INFO L74 IsIncluded]: Start isIncluded. First operand 662 states. Second operand has 660 states, 573 states have (on average 1.1465968586387434) internal successors, (657), 625 states have internal predecessors, (657), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:02,693 INFO L87 Difference]: Start difference. First operand 662 states. Second operand has 660 states, 573 states have (on average 1.1465968586387434) internal successors, (657), 625 states have internal predecessors, (657), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:02,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:02,710 INFO L93 Difference]: Finished difference Result 662 states and 746 transitions. [2022-04-27 22:33:02,710 INFO L276 IsEmpty]: Start isEmpty. Operand 662 states and 746 transitions. [2022-04-27 22:33:02,713 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:02,713 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:02,714 INFO L74 IsIncluded]: Start isIncluded. First operand has 660 states, 573 states have (on average 1.1465968586387434) internal successors, (657), 625 states have internal predecessors, (657), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) Second operand 662 states. [2022-04-27 22:33:02,714 INFO L87 Difference]: Start difference. First operand has 660 states, 573 states have (on average 1.1465968586387434) internal successors, (657), 625 states have internal predecessors, (657), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) Second operand 662 states. [2022-04-27 22:33:02,730 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:02,730 INFO L93 Difference]: Finished difference Result 662 states and 746 transitions. [2022-04-27 22:33:02,731 INFO L276 IsEmpty]: Start isEmpty. Operand 662 states and 746 transitions. [2022-04-27 22:33:02,734 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:02,734 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:02,734 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:33:02,734 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:33:02,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 660 states, 573 states have (on average 1.1465968586387434) internal successors, (657), 625 states have internal predecessors, (657), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:02,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 660 states to 660 states and 744 transitions. [2022-04-27 22:33:02,755 INFO L78 Accepts]: Start accepts. Automaton has 660 states and 744 transitions. Word has length 54 [2022-04-27 22:33:02,755 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:33:02,755 INFO L495 AbstractCegarLoop]: Abstraction has 660 states and 744 transitions. [2022-04-27 22:33:02,755 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 67 states, 67 states have (on average 1.492537313432836) internal successors, (100), 66 states have internal predecessors, (100), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:33:02,755 INFO L276 IsEmpty]: Start isEmpty. Operand 660 states and 744 transitions. [2022-04-27 22:33:02,759 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-27 22:33:02,759 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:33:02,759 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:33:02,777 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (68)] Forceful destruction successful, exit code 0 [2022-04-27 22:33:02,974 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 68 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable76 [2022-04-27 22:33:02,975 INFO L420 AbstractCegarLoop]: === Iteration 78 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:33:02,975 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:33:02,975 INFO L85 PathProgramCache]: Analyzing trace with hash -884356933, now seen corresponding path program 68 times [2022-04-27 22:33:02,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:33:02,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1119119404] [2022-04-27 22:33:02,975 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:33:02,975 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:33:02,994 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:03,011 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:33:03,012 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:03,013 INFO L290 TraceCheckUtils]: 0: Hoare triple {141444#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {141400#true} is VALID [2022-04-27 22:33:03,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {141400#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,014 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {141400#true} {141400#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,014 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:33:03,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 0: Hoare triple {141400#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 1: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 3: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 4: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 5: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 6: Hoare triple {141400#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,019 INFO L290 TraceCheckUtils]: 7: Hoare triple {141400#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {141400#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {141400#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 10: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 11: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 12: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 13: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 14: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 15: Hoare triple {141400#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 16: Hoare triple {141400#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L290 TraceCheckUtils]: 17: Hoare triple {141400#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {141400#true} {141400#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,020 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:33:03,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:03,096 INFO L290 TraceCheckUtils]: 0: Hoare triple {141400#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {141445#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:33:03,096 INFO L290 TraceCheckUtils]: 1: Hoare triple {141445#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141446#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:33:03,096 INFO L290 TraceCheckUtils]: 2: Hoare triple {141446#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141447#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:33:03,097 INFO L290 TraceCheckUtils]: 3: Hoare triple {141447#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141448#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:33:03,097 INFO L290 TraceCheckUtils]: 4: Hoare triple {141448#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141449#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:33:03,098 INFO L290 TraceCheckUtils]: 5: Hoare triple {141449#(<= student_version_~i~1 4)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,098 INFO L290 TraceCheckUtils]: 6: Hoare triple {141450#(<= student_version_~i~1 5)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,098 INFO L290 TraceCheckUtils]: 7: Hoare triple {141450#(<= student_version_~i~1 5)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,098 INFO L290 TraceCheckUtils]: 8: Hoare triple {141450#(<= student_version_~i~1 5)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,099 INFO L290 TraceCheckUtils]: 9: Hoare triple {141450#(<= student_version_~i~1 5)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141451#(<= student_version_~i~1 (+ 5 student_version_~x~1))} is VALID [2022-04-27 22:33:03,099 INFO L290 TraceCheckUtils]: 10: Hoare triple {141451#(<= student_version_~i~1 (+ 5 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141452#(<= student_version_~i~1 (+ student_version_~x~1 4))} is VALID [2022-04-27 22:33:03,099 INFO L290 TraceCheckUtils]: 11: Hoare triple {141452#(<= student_version_~i~1 (+ student_version_~x~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141453#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:33:03,100 INFO L290 TraceCheckUtils]: 12: Hoare triple {141453#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141454#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:33:03,100 INFO L290 TraceCheckUtils]: 13: Hoare triple {141454#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141455#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:33:03,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {141455#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141456#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:33:03,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {141456#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141401#false} is VALID [2022-04-27 22:33:03,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {141401#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,101 INFO L290 TraceCheckUtils]: 17: Hoare triple {141401#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {141401#false} is VALID [2022-04-27 22:33:03,101 INFO L290 TraceCheckUtils]: 18: Hoare triple {141401#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,101 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {141401#false} {141400#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {141401#false} is VALID [2022-04-27 22:33:03,102 INFO L272 TraceCheckUtils]: 0: Hoare triple {141400#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141444#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 1: Hoare triple {141444#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 2: Hoare triple {141400#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {141400#true} {141400#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L272 TraceCheckUtils]: 4: Hoare triple {141400#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 5: Hoare triple {141400#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 6: Hoare triple {141400#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L272 TraceCheckUtils]: 7: Hoare triple {141400#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 8: Hoare triple {141400#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 9: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 10: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 11: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 12: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,102 INFO L290 TraceCheckUtils]: 13: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 14: Hoare triple {141400#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 15: Hoare triple {141400#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 16: Hoare triple {141400#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 17: Hoare triple {141400#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 18: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 19: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 20: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 21: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 22: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 23: Hoare triple {141400#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 24: Hoare triple {141400#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {141400#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {141400#true} {141400#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,103 INFO L290 TraceCheckUtils]: 27: Hoare triple {141400#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {141400#true} is VALID [2022-04-27 22:33:03,104 INFO L272 TraceCheckUtils]: 28: Hoare triple {141400#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,104 INFO L290 TraceCheckUtils]: 29: Hoare triple {141400#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {141445#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:33:03,104 INFO L290 TraceCheckUtils]: 30: Hoare triple {141445#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141446#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:33:03,105 INFO L290 TraceCheckUtils]: 31: Hoare triple {141446#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141447#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:33:03,105 INFO L290 TraceCheckUtils]: 32: Hoare triple {141447#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141448#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:33:03,105 INFO L290 TraceCheckUtils]: 33: Hoare triple {141448#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141449#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:33:03,106 INFO L290 TraceCheckUtils]: 34: Hoare triple {141449#(<= student_version_~i~1 4)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,106 INFO L290 TraceCheckUtils]: 35: Hoare triple {141450#(<= student_version_~i~1 5)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,106 INFO L290 TraceCheckUtils]: 36: Hoare triple {141450#(<= student_version_~i~1 5)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,106 INFO L290 TraceCheckUtils]: 37: Hoare triple {141450#(<= student_version_~i~1 5)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,107 INFO L290 TraceCheckUtils]: 38: Hoare triple {141450#(<= student_version_~i~1 5)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141451#(<= student_version_~i~1 (+ 5 student_version_~x~1))} is VALID [2022-04-27 22:33:03,107 INFO L290 TraceCheckUtils]: 39: Hoare triple {141451#(<= student_version_~i~1 (+ 5 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141452#(<= student_version_~i~1 (+ student_version_~x~1 4))} is VALID [2022-04-27 22:33:03,107 INFO L290 TraceCheckUtils]: 40: Hoare triple {141452#(<= student_version_~i~1 (+ student_version_~x~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141453#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:33:03,108 INFO L290 TraceCheckUtils]: 41: Hoare triple {141453#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141454#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:33:03,108 INFO L290 TraceCheckUtils]: 42: Hoare triple {141454#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141455#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 43: Hoare triple {141455#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141456#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 44: Hoare triple {141456#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 45: Hoare triple {141401#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 46: Hoare triple {141401#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 47: Hoare triple {141401#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {141401#false} {141400#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 49: Hoare triple {141401#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L272 TraceCheckUtils]: 50: Hoare triple {141401#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 51: Hoare triple {141401#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {141401#false} is VALID [2022-04-27 22:33:03,109 INFO L290 TraceCheckUtils]: 52: Hoare triple {141401#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,110 INFO L290 TraceCheckUtils]: 53: Hoare triple {141401#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,110 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:33:03,110 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:33:03,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1119119404] [2022-04-27 22:33:03,110 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1119119404] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:33:03,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [965070485] [2022-04-27 22:33:03,110 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:33:03,110 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:33:03,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:33:03,111 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:33:03,112 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (69)] Waiting until timeout for monitored process [2022-04-27 22:33:03,212 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:33:03,212 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:33:03,213 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 22:33:03,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:03,232 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:33:03,479 INFO L272 TraceCheckUtils]: 0: Hoare triple {141400#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,479 INFO L290 TraceCheckUtils]: 1: Hoare triple {141400#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 2: Hoare triple {141400#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {141400#true} {141400#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L272 TraceCheckUtils]: 4: Hoare triple {141400#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 5: Hoare triple {141400#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 6: Hoare triple {141400#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L272 TraceCheckUtils]: 7: Hoare triple {141400#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 8: Hoare triple {141400#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 9: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 10: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 11: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 12: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 13: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 14: Hoare triple {141400#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,480 INFO L290 TraceCheckUtils]: 15: Hoare triple {141400#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 16: Hoare triple {141400#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 17: Hoare triple {141400#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 18: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 19: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 20: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 21: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 22: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 23: Hoare triple {141400#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 24: Hoare triple {141400#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 25: Hoare triple {141400#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {141400#true} {141400#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L290 TraceCheckUtils]: 27: Hoare triple {141400#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {141400#true} is VALID [2022-04-27 22:33:03,481 INFO L272 TraceCheckUtils]: 28: Hoare triple {141400#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,482 INFO L290 TraceCheckUtils]: 29: Hoare triple {141400#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {141445#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:33:03,482 INFO L290 TraceCheckUtils]: 30: Hoare triple {141445#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141446#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:33:03,483 INFO L290 TraceCheckUtils]: 31: Hoare triple {141446#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141447#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:33:03,483 INFO L290 TraceCheckUtils]: 32: Hoare triple {141447#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141448#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:33:03,483 INFO L290 TraceCheckUtils]: 33: Hoare triple {141448#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141449#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:33:03,484 INFO L290 TraceCheckUtils]: 34: Hoare triple {141449#(<= student_version_~i~1 4)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,484 INFO L290 TraceCheckUtils]: 35: Hoare triple {141450#(<= student_version_~i~1 5)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,484 INFO L290 TraceCheckUtils]: 36: Hoare triple {141450#(<= student_version_~i~1 5)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,485 INFO L290 TraceCheckUtils]: 37: Hoare triple {141450#(<= student_version_~i~1 5)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,485 INFO L290 TraceCheckUtils]: 38: Hoare triple {141450#(<= student_version_~i~1 5)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141574#(and (<= 0 student_version_~x~1) (<= student_version_~i~1 5))} is VALID [2022-04-27 22:33:03,486 INFO L290 TraceCheckUtils]: 39: Hoare triple {141574#(and (<= 0 student_version_~x~1) (<= student_version_~i~1 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141578#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 5))} is VALID [2022-04-27 22:33:03,486 INFO L290 TraceCheckUtils]: 40: Hoare triple {141578#(and (<= 1 student_version_~x~1) (<= student_version_~i~1 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141582#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 5))} is VALID [2022-04-27 22:33:03,487 INFO L290 TraceCheckUtils]: 41: Hoare triple {141582#(and (<= 2 student_version_~x~1) (<= student_version_~i~1 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141586#(and (<= 3 student_version_~x~1) (<= student_version_~i~1 5))} is VALID [2022-04-27 22:33:03,487 INFO L290 TraceCheckUtils]: 42: Hoare triple {141586#(and (<= 3 student_version_~x~1) (<= student_version_~i~1 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141590#(and (<= 4 student_version_~x~1) (<= student_version_~i~1 5))} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 43: Hoare triple {141590#(and (<= 4 student_version_~x~1) (<= student_version_~i~1 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141594#(and (<= 5 student_version_~x~1) (<= student_version_~i~1 5))} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {141594#(and (<= 5 student_version_~x~1) (<= student_version_~i~1 5))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 45: Hoare triple {141401#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 46: Hoare triple {141401#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 47: Hoare triple {141401#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {141401#false} {141400#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 49: Hoare triple {141401#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L272 TraceCheckUtils]: 50: Hoare triple {141401#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 51: Hoare triple {141401#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {141401#false} is VALID [2022-04-27 22:33:03,488 INFO L290 TraceCheckUtils]: 52: Hoare triple {141401#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,489 INFO L290 TraceCheckUtils]: 53: Hoare triple {141401#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,489 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:33:03,489 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:33:03,685 INFO L290 TraceCheckUtils]: 53: Hoare triple {141401#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,685 INFO L290 TraceCheckUtils]: 52: Hoare triple {141401#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,685 INFO L290 TraceCheckUtils]: 51: Hoare triple {141401#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {141401#false} is VALID [2022-04-27 22:33:03,685 INFO L272 TraceCheckUtils]: 50: Hoare triple {141401#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {141401#false} is VALID [2022-04-27 22:33:03,685 INFO L290 TraceCheckUtils]: 49: Hoare triple {141401#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {141401#false} is VALID [2022-04-27 22:33:03,685 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {141401#false} {141400#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {141401#false} is VALID [2022-04-27 22:33:03,685 INFO L290 TraceCheckUtils]: 47: Hoare triple {141401#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,686 INFO L290 TraceCheckUtils]: 46: Hoare triple {141401#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {141401#false} is VALID [2022-04-27 22:33:03,686 INFO L290 TraceCheckUtils]: 45: Hoare triple {141401#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {141401#false} is VALID [2022-04-27 22:33:03,686 INFO L290 TraceCheckUtils]: 44: Hoare triple {141456#(<= student_version_~i~1 student_version_~x~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141401#false} is VALID [2022-04-27 22:33:03,686 INFO L290 TraceCheckUtils]: 43: Hoare triple {141455#(<= student_version_~i~1 (+ student_version_~x~1 1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141456#(<= student_version_~i~1 student_version_~x~1)} is VALID [2022-04-27 22:33:03,687 INFO L290 TraceCheckUtils]: 42: Hoare triple {141454#(<= student_version_~i~1 (+ 2 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141455#(<= student_version_~i~1 (+ student_version_~x~1 1))} is VALID [2022-04-27 22:33:03,687 INFO L290 TraceCheckUtils]: 41: Hoare triple {141453#(<= student_version_~i~1 (+ 3 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141454#(<= student_version_~i~1 (+ 2 student_version_~x~1))} is VALID [2022-04-27 22:33:03,688 INFO L290 TraceCheckUtils]: 40: Hoare triple {141452#(<= student_version_~i~1 (+ student_version_~x~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141453#(<= student_version_~i~1 (+ 3 student_version_~x~1))} is VALID [2022-04-27 22:33:03,688 INFO L290 TraceCheckUtils]: 39: Hoare triple {141451#(<= student_version_~i~1 (+ 5 student_version_~x~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141452#(<= student_version_~i~1 (+ student_version_~x~1 4))} is VALID [2022-04-27 22:33:03,689 INFO L290 TraceCheckUtils]: 38: Hoare triple {141450#(<= student_version_~i~1 5)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {141451#(<= student_version_~i~1 (+ 5 student_version_~x~1))} is VALID [2022-04-27 22:33:03,689 INFO L290 TraceCheckUtils]: 37: Hoare triple {141450#(<= student_version_~i~1 5)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,689 INFO L290 TraceCheckUtils]: 36: Hoare triple {141450#(<= student_version_~i~1 5)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,689 INFO L290 TraceCheckUtils]: 35: Hoare triple {141450#(<= student_version_~i~1 5)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,690 INFO L290 TraceCheckUtils]: 34: Hoare triple {141449#(<= student_version_~i~1 4)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141450#(<= student_version_~i~1 5)} is VALID [2022-04-27 22:33:03,690 INFO L290 TraceCheckUtils]: 33: Hoare triple {141448#(<= student_version_~i~1 3)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141449#(<= student_version_~i~1 4)} is VALID [2022-04-27 22:33:03,691 INFO L290 TraceCheckUtils]: 32: Hoare triple {141447#(<= student_version_~i~1 2)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141448#(<= student_version_~i~1 3)} is VALID [2022-04-27 22:33:03,691 INFO L290 TraceCheckUtils]: 31: Hoare triple {141446#(<= student_version_~i~1 1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141447#(<= student_version_~i~1 2)} is VALID [2022-04-27 22:33:03,692 INFO L290 TraceCheckUtils]: 30: Hoare triple {141445#(<= student_version_~i~1 0)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {141446#(<= student_version_~i~1 1)} is VALID [2022-04-27 22:33:03,692 INFO L290 TraceCheckUtils]: 29: Hoare triple {141400#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {141445#(<= student_version_~i~1 0)} is VALID [2022-04-27 22:33:03,692 INFO L272 TraceCheckUtils]: 28: Hoare triple {141400#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,692 INFO L290 TraceCheckUtils]: 27: Hoare triple {141400#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {141400#true} is VALID [2022-04-27 22:33:03,692 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {141400#true} {141400#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,692 INFO L290 TraceCheckUtils]: 25: Hoare triple {141400#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,692 INFO L290 TraceCheckUtils]: 24: Hoare triple {141400#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {141400#true} is VALID [2022-04-27 22:33:03,692 INFO L290 TraceCheckUtils]: 23: Hoare triple {141400#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 22: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 21: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 20: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 19: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 18: Hoare triple {141400#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 17: Hoare triple {141400#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 16: Hoare triple {141400#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 15: Hoare triple {141400#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 14: Hoare triple {141400#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 13: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 12: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 11: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 10: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 9: Hoare triple {141400#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {141400#true} is VALID [2022-04-27 22:33:03,693 INFO L290 TraceCheckUtils]: 8: Hoare triple {141400#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L272 TraceCheckUtils]: 7: Hoare triple {141400#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L290 TraceCheckUtils]: 6: Hoare triple {141400#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L290 TraceCheckUtils]: 5: Hoare triple {141400#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L272 TraceCheckUtils]: 4: Hoare triple {141400#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {141400#true} {141400#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L290 TraceCheckUtils]: 2: Hoare triple {141400#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {141400#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L272 TraceCheckUtils]: 0: Hoare triple {141400#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141400#true} is VALID [2022-04-27 22:33:03,694 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:33:03,694 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [965070485] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:33:03,694 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:33:03,694 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 14] total 21 [2022-04-27 22:33:03,694 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1283170761] [2022-04-27 22:33:03,695 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:33:03,695 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 54 [2022-04-27 22:33:03,695 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:33:03,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:33:03,726 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-27 22:33:03,726 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-27 22:33:03,726 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:33:03,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-27 22:33:03,726 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=309, Unknown=0, NotChecked=0, Total=420 [2022-04-27 22:33:03,727 INFO L87 Difference]: Start difference. First operand 660 states and 744 transitions. Second operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:33:09,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:09,169 INFO L93 Difference]: Finished difference Result 818 states and 933 transitions. [2022-04-27 22:33:09,169 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-27 22:33:09,169 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 54 [2022-04-27 22:33:09,170 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:33:09,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:33:09,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 109 transitions. [2022-04-27 22:33:09,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:33:09,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 109 transitions. [2022-04-27 22:33:09,171 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 109 transitions. [2022-04-27 22:33:09,221 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:33:09,260 INFO L225 Difference]: With dead ends: 818 [2022-04-27 22:33:09,260 INFO L226 Difference]: Without dead ends: 772 [2022-04-27 22:33:09,263 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 154 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 456 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=579, Invalid=1677, Unknown=0, NotChecked=0, Total=2256 [2022-04-27 22:33:09,263 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 195 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 273 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 201 SdHoareTripleChecker+Valid, 60 SdHoareTripleChecker+Invalid, 302 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 273 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:33:09,263 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [201 Valid, 60 Invalid, 302 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 273 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 22:33:09,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 772 states. [2022-04-27 22:33:14,376 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 772 to 742. [2022-04-27 22:33:14,376 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:33:14,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 772 states. Second operand has 742 states, 655 states have (on average 1.1450381679389312) internal successors, (750), 707 states have internal predecessors, (750), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:14,377 INFO L74 IsIncluded]: Start isIncluded. First operand 772 states. Second operand has 742 states, 655 states have (on average 1.1450381679389312) internal successors, (750), 707 states have internal predecessors, (750), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:14,378 INFO L87 Difference]: Start difference. First operand 772 states. Second operand has 742 states, 655 states have (on average 1.1450381679389312) internal successors, (750), 707 states have internal predecessors, (750), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:14,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:14,400 INFO L93 Difference]: Finished difference Result 772 states and 867 transitions. [2022-04-27 22:33:14,400 INFO L276 IsEmpty]: Start isEmpty. Operand 772 states and 867 transitions. [2022-04-27 22:33:14,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:14,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:14,405 INFO L74 IsIncluded]: Start isIncluded. First operand has 742 states, 655 states have (on average 1.1450381679389312) internal successors, (750), 707 states have internal predecessors, (750), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) Second operand 772 states. [2022-04-27 22:33:14,405 INFO L87 Difference]: Start difference. First operand has 742 states, 655 states have (on average 1.1450381679389312) internal successors, (750), 707 states have internal predecessors, (750), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) Second operand 772 states. [2022-04-27 22:33:14,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:14,429 INFO L93 Difference]: Finished difference Result 772 states and 867 transitions. [2022-04-27 22:33:14,429 INFO L276 IsEmpty]: Start isEmpty. Operand 772 states and 867 transitions. [2022-04-27 22:33:14,433 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:14,433 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:14,433 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:33:14,433 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:33:14,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 742 states, 655 states have (on average 1.1450381679389312) internal successors, (750), 707 states have internal predecessors, (750), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:14,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 742 states to 742 states and 837 transitions. [2022-04-27 22:33:14,459 INFO L78 Accepts]: Start accepts. Automaton has 742 states and 837 transitions. Word has length 54 [2022-04-27 22:33:14,459 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:33:14,459 INFO L495 AbstractCegarLoop]: Abstraction has 742 states and 837 transitions. [2022-04-27 22:33:14,459 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:33:14,459 INFO L276 IsEmpty]: Start isEmpty. Operand 742 states and 837 transitions. [2022-04-27 22:33:14,464 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-27 22:33:14,464 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:33:14,464 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:33:14,483 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (69)] Forceful destruction successful, exit code 0 [2022-04-27 22:33:14,679 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 69 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable77 [2022-04-27 22:33:14,679 INFO L420 AbstractCegarLoop]: === Iteration 79 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:33:14,680 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:33:14,680 INFO L85 PathProgramCache]: Analyzing trace with hash -68187530, now seen corresponding path program 69 times [2022-04-27 22:33:14,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:33:14,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [43679823] [2022-04-27 22:33:14,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:33:14,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:33:14,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:14,698 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:33:14,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:14,699 INFO L290 TraceCheckUtils]: 0: Hoare triple {145726#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {145682#true} is VALID [2022-04-27 22:33:14,699 INFO L290 TraceCheckUtils]: 1: Hoare triple {145682#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,699 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {145682#true} {145682#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,699 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:33:14,703 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:14,754 INFO L290 TraceCheckUtils]: 0: Hoare triple {145682#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {145727#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:33:14,754 INFO L290 TraceCheckUtils]: 1: Hoare triple {145727#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145728#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:33:14,754 INFO L290 TraceCheckUtils]: 2: Hoare triple {145728#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145729#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:33:14,755 INFO L290 TraceCheckUtils]: 3: Hoare triple {145729#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145730#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:33:14,755 INFO L290 TraceCheckUtils]: 4: Hoare triple {145730#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145731#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:33:14,755 INFO L290 TraceCheckUtils]: 5: Hoare triple {145731#(<= correct_version_~i~0 4)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,756 INFO L290 TraceCheckUtils]: 6: Hoare triple {145732#(<= correct_version_~i~0 5)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {145732#(<= correct_version_~i~0 5)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {145732#(<= correct_version_~i~0 5)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {145732#(<= correct_version_~i~0 5)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145733#(<= correct_version_~i~0 (+ correct_version_~x~0 5))} is VALID [2022-04-27 22:33:14,757 INFO L290 TraceCheckUtils]: 10: Hoare triple {145733#(<= correct_version_~i~0 (+ correct_version_~x~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145734#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} is VALID [2022-04-27 22:33:14,757 INFO L290 TraceCheckUtils]: 11: Hoare triple {145734#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145735#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:33:14,757 INFO L290 TraceCheckUtils]: 12: Hoare triple {145735#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145736#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:33:14,758 INFO L290 TraceCheckUtils]: 13: Hoare triple {145736#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145737#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:33:14,758 INFO L290 TraceCheckUtils]: 14: Hoare triple {145737#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145738#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:33:14,758 INFO L290 TraceCheckUtils]: 15: Hoare triple {145738#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145683#false} is VALID [2022-04-27 22:33:14,758 INFO L290 TraceCheckUtils]: 16: Hoare triple {145683#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:14,758 INFO L290 TraceCheckUtils]: 17: Hoare triple {145683#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {145683#false} is VALID [2022-04-27 22:33:14,758 INFO L290 TraceCheckUtils]: 18: Hoare triple {145683#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:14,758 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {145683#false} {145682#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:14,759 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:33:14,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:14,763 INFO L290 TraceCheckUtils]: 0: Hoare triple {145682#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {145682#true} is VALID [2022-04-27 22:33:14,763 INFO L290 TraceCheckUtils]: 1: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,763 INFO L290 TraceCheckUtils]: 2: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,763 INFO L290 TraceCheckUtils]: 3: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 4: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 6: Hoare triple {145682#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {145682#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {145682#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {145682#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 10: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 11: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 12: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 13: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 14: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 15: Hoare triple {145682#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 16: Hoare triple {145682#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {145682#true} is VALID [2022-04-27 22:33:14,764 INFO L290 TraceCheckUtils]: 17: Hoare triple {145682#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,765 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {145682#true} {145683#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:14,765 INFO L272 TraceCheckUtils]: 0: Hoare triple {145682#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145726#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:33:14,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {145726#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {145682#true} is VALID [2022-04-27 22:33:14,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {145682#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {145682#true} {145682#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,765 INFO L272 TraceCheckUtils]: 4: Hoare triple {145682#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,765 INFO L290 TraceCheckUtils]: 5: Hoare triple {145682#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:14,765 INFO L290 TraceCheckUtils]: 6: Hoare triple {145682#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,765 INFO L272 TraceCheckUtils]: 7: Hoare triple {145682#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:14,766 INFO L290 TraceCheckUtils]: 8: Hoare triple {145682#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {145727#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:33:14,766 INFO L290 TraceCheckUtils]: 9: Hoare triple {145727#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145728#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:33:14,766 INFO L290 TraceCheckUtils]: 10: Hoare triple {145728#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145729#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:33:14,767 INFO L290 TraceCheckUtils]: 11: Hoare triple {145729#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145730#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:33:14,767 INFO L290 TraceCheckUtils]: 12: Hoare triple {145730#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145731#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:33:14,767 INFO L290 TraceCheckUtils]: 13: Hoare triple {145731#(<= correct_version_~i~0 4)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,767 INFO L290 TraceCheckUtils]: 14: Hoare triple {145732#(<= correct_version_~i~0 5)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,768 INFO L290 TraceCheckUtils]: 15: Hoare triple {145732#(<= correct_version_~i~0 5)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,768 INFO L290 TraceCheckUtils]: 16: Hoare triple {145732#(<= correct_version_~i~0 5)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:14,768 INFO L290 TraceCheckUtils]: 17: Hoare triple {145732#(<= correct_version_~i~0 5)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145733#(<= correct_version_~i~0 (+ correct_version_~x~0 5))} is VALID [2022-04-27 22:33:14,768 INFO L290 TraceCheckUtils]: 18: Hoare triple {145733#(<= correct_version_~i~0 (+ correct_version_~x~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145734#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} is VALID [2022-04-27 22:33:14,769 INFO L290 TraceCheckUtils]: 19: Hoare triple {145734#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145735#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:33:14,769 INFO L290 TraceCheckUtils]: 20: Hoare triple {145735#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145736#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:33:14,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {145736#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145737#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 22: Hoare triple {145737#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145738#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 23: Hoare triple {145738#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145683#false} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 24: Hoare triple {145683#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 25: Hoare triple {145683#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {145683#false} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 26: Hoare triple {145683#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:14,770 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {145683#false} {145682#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 28: Hoare triple {145683#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {145683#false} is VALID [2022-04-27 22:33:14,770 INFO L272 TraceCheckUtils]: 29: Hoare triple {145683#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 30: Hoare triple {145682#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {145682#true} is VALID [2022-04-27 22:33:14,770 INFO L290 TraceCheckUtils]: 31: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 32: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 33: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 34: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 35: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 36: Hoare triple {145682#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 37: Hoare triple {145682#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 38: Hoare triple {145682#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 39: Hoare triple {145682#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 40: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 41: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 42: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 43: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 44: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 45: Hoare triple {145682#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 46: Hoare triple {145682#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {145682#true} is VALID [2022-04-27 22:33:14,771 INFO L290 TraceCheckUtils]: 47: Hoare triple {145682#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:14,772 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {145682#true} {145683#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:14,772 INFO L290 TraceCheckUtils]: 49: Hoare triple {145683#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {145683#false} is VALID [2022-04-27 22:33:14,772 INFO L272 TraceCheckUtils]: 50: Hoare triple {145683#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {145683#false} is VALID [2022-04-27 22:33:14,772 INFO L290 TraceCheckUtils]: 51: Hoare triple {145683#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {145683#false} is VALID [2022-04-27 22:33:14,772 INFO L290 TraceCheckUtils]: 52: Hoare triple {145683#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:14,772 INFO L290 TraceCheckUtils]: 53: Hoare triple {145683#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:14,772 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:33:14,772 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:33:14,772 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [43679823] [2022-04-27 22:33:14,772 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [43679823] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:33:14,772 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1006329363] [2022-04-27 22:33:14,772 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:33:14,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:33:14,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:33:14,773 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:33:14,774 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (70)] Waiting until timeout for monitored process [2022-04-27 22:33:14,893 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 22:33:14,894 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:33:14,894 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 22:33:14,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:14,901 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:33:15,049 INFO L272 TraceCheckUtils]: 0: Hoare triple {145682#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,049 INFO L290 TraceCheckUtils]: 1: Hoare triple {145682#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {145682#true} is VALID [2022-04-27 22:33:15,049 INFO L290 TraceCheckUtils]: 2: Hoare triple {145682#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,049 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {145682#true} {145682#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,049 INFO L272 TraceCheckUtils]: 4: Hoare triple {145682#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,049 INFO L290 TraceCheckUtils]: 5: Hoare triple {145682#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:15,049 INFO L290 TraceCheckUtils]: 6: Hoare triple {145682#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,049 INFO L272 TraceCheckUtils]: 7: Hoare triple {145682#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:15,050 INFO L290 TraceCheckUtils]: 8: Hoare triple {145682#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {145727#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:33:15,050 INFO L290 TraceCheckUtils]: 9: Hoare triple {145727#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145728#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:33:15,050 INFO L290 TraceCheckUtils]: 10: Hoare triple {145728#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145729#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:33:15,051 INFO L290 TraceCheckUtils]: 11: Hoare triple {145729#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145730#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:33:15,051 INFO L290 TraceCheckUtils]: 12: Hoare triple {145730#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145731#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:33:15,051 INFO L290 TraceCheckUtils]: 13: Hoare triple {145731#(<= correct_version_~i~0 4)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,052 INFO L290 TraceCheckUtils]: 14: Hoare triple {145732#(<= correct_version_~i~0 5)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,052 INFO L290 TraceCheckUtils]: 15: Hoare triple {145732#(<= correct_version_~i~0 5)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,052 INFO L290 TraceCheckUtils]: 16: Hoare triple {145732#(<= correct_version_~i~0 5)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,052 INFO L290 TraceCheckUtils]: 17: Hoare triple {145732#(<= correct_version_~i~0 5)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145793#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 5))} is VALID [2022-04-27 22:33:15,053 INFO L290 TraceCheckUtils]: 18: Hoare triple {145793#(and (<= 0 correct_version_~x~0) (<= correct_version_~i~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145797#(and (<= 1 correct_version_~x~0) (<= correct_version_~i~0 5))} is VALID [2022-04-27 22:33:15,053 INFO L290 TraceCheckUtils]: 19: Hoare triple {145797#(and (<= 1 correct_version_~x~0) (<= correct_version_~i~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145801#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 5))} is VALID [2022-04-27 22:33:15,053 INFO L290 TraceCheckUtils]: 20: Hoare triple {145801#(and (<= 2 correct_version_~x~0) (<= correct_version_~i~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145805#(and (<= 3 correct_version_~x~0) (<= correct_version_~i~0 5))} is VALID [2022-04-27 22:33:15,054 INFO L290 TraceCheckUtils]: 21: Hoare triple {145805#(and (<= 3 correct_version_~x~0) (<= correct_version_~i~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145809#(and (<= 4 correct_version_~x~0) (<= correct_version_~i~0 5))} is VALID [2022-04-27 22:33:15,054 INFO L290 TraceCheckUtils]: 22: Hoare triple {145809#(and (<= 4 correct_version_~x~0) (<= correct_version_~i~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145813#(and (<= 5 correct_version_~x~0) (<= correct_version_~i~0 5))} is VALID [2022-04-27 22:33:15,054 INFO L290 TraceCheckUtils]: 23: Hoare triple {145813#(and (<= 5 correct_version_~x~0) (<= correct_version_~i~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145683#false} is VALID [2022-04-27 22:33:15,054 INFO L290 TraceCheckUtils]: 24: Hoare triple {145683#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,054 INFO L290 TraceCheckUtils]: 25: Hoare triple {145683#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 26: Hoare triple {145683#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {145683#false} {145682#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 28: Hoare triple {145683#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L272 TraceCheckUtils]: 29: Hoare triple {145683#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 30: Hoare triple {145683#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 31: Hoare triple {145683#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 32: Hoare triple {145683#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 33: Hoare triple {145683#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 34: Hoare triple {145683#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 35: Hoare triple {145683#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 36: Hoare triple {145683#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 37: Hoare triple {145683#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 38: Hoare triple {145683#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,055 INFO L290 TraceCheckUtils]: 39: Hoare triple {145683#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 40: Hoare triple {145683#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 41: Hoare triple {145683#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 42: Hoare triple {145683#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 43: Hoare triple {145683#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 44: Hoare triple {145683#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 45: Hoare triple {145683#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 46: Hoare triple {145683#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 47: Hoare triple {145683#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {145683#false} {145683#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 49: Hoare triple {145683#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L272 TraceCheckUtils]: 50: Hoare triple {145683#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 51: Hoare triple {145683#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 52: Hoare triple {145683#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L290 TraceCheckUtils]: 53: Hoare triple {145683#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,056 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:33:15,057 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 53: Hoare triple {145683#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 52: Hoare triple {145683#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 51: Hoare triple {145683#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {145683#false} is VALID [2022-04-27 22:33:15,171 INFO L272 TraceCheckUtils]: 50: Hoare triple {145683#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {145683#false} is VALID [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 49: Hoare triple {145683#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {145683#false} is VALID [2022-04-27 22:33:15,171 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {145682#true} {145683#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 47: Hoare triple {145682#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 46: Hoare triple {145682#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {145682#true} is VALID [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 45: Hoare triple {145682#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,171 INFO L290 TraceCheckUtils]: 44: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 43: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 42: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 41: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 40: Hoare triple {145682#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 39: Hoare triple {145682#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 38: Hoare triple {145682#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 37: Hoare triple {145682#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 36: Hoare triple {145682#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 35: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 34: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 33: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 32: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 31: Hoare triple {145682#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 30: Hoare triple {145682#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L272 TraceCheckUtils]: 29: Hoare triple {145683#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:15,172 INFO L290 TraceCheckUtils]: 28: Hoare triple {145683#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {145683#false} is VALID [2022-04-27 22:33:15,173 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {145683#false} {145682#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {145683#false} is VALID [2022-04-27 22:33:15,173 INFO L290 TraceCheckUtils]: 26: Hoare triple {145683#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {145683#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {145683#false} is VALID [2022-04-27 22:33:15,173 INFO L290 TraceCheckUtils]: 24: Hoare triple {145683#false} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {145683#false} is VALID [2022-04-27 22:33:15,173 INFO L290 TraceCheckUtils]: 23: Hoare triple {145738#(<= correct_version_~i~0 correct_version_~x~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145683#false} is VALID [2022-04-27 22:33:15,173 INFO L290 TraceCheckUtils]: 22: Hoare triple {145737#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145738#(<= correct_version_~i~0 correct_version_~x~0)} is VALID [2022-04-27 22:33:15,174 INFO L290 TraceCheckUtils]: 21: Hoare triple {145736#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145737#(<= correct_version_~i~0 (+ correct_version_~x~0 1))} is VALID [2022-04-27 22:33:15,174 INFO L290 TraceCheckUtils]: 20: Hoare triple {145735#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145736#(<= correct_version_~i~0 (+ correct_version_~x~0 2))} is VALID [2022-04-27 22:33:15,174 INFO L290 TraceCheckUtils]: 19: Hoare triple {145734#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145735#(<= correct_version_~i~0 (+ correct_version_~x~0 3))} is VALID [2022-04-27 22:33:15,175 INFO L290 TraceCheckUtils]: 18: Hoare triple {145733#(<= correct_version_~i~0 (+ correct_version_~x~0 5))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145734#(<= correct_version_~i~0 (+ correct_version_~x~0 4))} is VALID [2022-04-27 22:33:15,175 INFO L290 TraceCheckUtils]: 17: Hoare triple {145732#(<= correct_version_~i~0 5)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {145733#(<= correct_version_~i~0 (+ correct_version_~x~0 5))} is VALID [2022-04-27 22:33:15,175 INFO L290 TraceCheckUtils]: 16: Hoare triple {145732#(<= correct_version_~i~0 5)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,175 INFO L290 TraceCheckUtils]: 15: Hoare triple {145732#(<= correct_version_~i~0 5)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,176 INFO L290 TraceCheckUtils]: 14: Hoare triple {145732#(<= correct_version_~i~0 5)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,176 INFO L290 TraceCheckUtils]: 13: Hoare triple {145731#(<= correct_version_~i~0 4)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145732#(<= correct_version_~i~0 5)} is VALID [2022-04-27 22:33:15,176 INFO L290 TraceCheckUtils]: 12: Hoare triple {145730#(<= correct_version_~i~0 3)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145731#(<= correct_version_~i~0 4)} is VALID [2022-04-27 22:33:15,177 INFO L290 TraceCheckUtils]: 11: Hoare triple {145729#(<= correct_version_~i~0 2)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145730#(<= correct_version_~i~0 3)} is VALID [2022-04-27 22:33:15,177 INFO L290 TraceCheckUtils]: 10: Hoare triple {145728#(<= correct_version_~i~0 1)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145729#(<= correct_version_~i~0 2)} is VALID [2022-04-27 22:33:15,177 INFO L290 TraceCheckUtils]: 9: Hoare triple {145727#(<= correct_version_~i~0 0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {145728#(<= correct_version_~i~0 1)} is VALID [2022-04-27 22:33:15,178 INFO L290 TraceCheckUtils]: 8: Hoare triple {145682#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {145727#(<= correct_version_~i~0 0)} is VALID [2022-04-27 22:33:15,178 INFO L272 TraceCheckUtils]: 7: Hoare triple {145682#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L290 TraceCheckUtils]: 6: Hoare triple {145682#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L290 TraceCheckUtils]: 5: Hoare triple {145682#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L272 TraceCheckUtils]: 4: Hoare triple {145682#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {145682#true} {145682#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L290 TraceCheckUtils]: 2: Hoare triple {145682#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L290 TraceCheckUtils]: 1: Hoare triple {145682#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L272 TraceCheckUtils]: 0: Hoare triple {145682#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145682#true} is VALID [2022-04-27 22:33:15,178 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 22:33:15,178 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1006329363] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:33:15,178 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:33:15,178 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 14] total 21 [2022-04-27 22:33:15,179 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1850745331] [2022-04-27 22:33:15,179 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:33:15,179 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.6666666666666665) internal successors, (56), 20 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 54 [2022-04-27 22:33:15,179 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:33:15,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.6666666666666665) internal successors, (56), 20 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:15,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:33:15,203 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-27 22:33:15,203 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:33:15,203 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-27 22:33:15,203 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=111, Invalid=309, Unknown=0, NotChecked=0, Total=420 [2022-04-27 22:33:15,203 INFO L87 Difference]: Start difference. First operand 742 states and 837 transitions. Second operand has 21 states, 21 states have (on average 2.6666666666666665) internal successors, (56), 20 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:21,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:21,681 INFO L93 Difference]: Finished difference Result 1298 states and 1460 transitions. [2022-04-27 22:33:21,681 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-27 22:33:21,681 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.6666666666666665) internal successors, (56), 20 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 54 [2022-04-27 22:33:21,681 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:33:21,681 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.6666666666666665) internal successors, (56), 20 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:21,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 122 transitions. [2022-04-27 22:33:21,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.6666666666666665) internal successors, (56), 20 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:21,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 122 transitions. [2022-04-27 22:33:21,692 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 122 transitions. [2022-04-27 22:33:21,745 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-27 22:33:21,785 INFO L225 Difference]: With dead ends: 1298 [2022-04-27 22:33:21,786 INFO L226 Difference]: Without dead ends: 854 [2022-04-27 22:33:21,789 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 154 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 456 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=579, Invalid=1677, Unknown=0, NotChecked=0, Total=2256 [2022-04-27 22:33:21,790 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 173 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 377 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 180 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 402 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 377 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:33:21,790 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [180 Valid, 75 Invalid, 402 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 377 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:33:21,790 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 854 states. [2022-04-27 22:33:28,170 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 854 to 824. [2022-04-27 22:33:28,170 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:33:28,171 INFO L82 GeneralOperation]: Start isEquivalent. First operand 854 states. Second operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:28,172 INFO L74 IsIncluded]: Start isIncluded. First operand 854 states. Second operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:28,172 INFO L87 Difference]: Start difference. First operand 854 states. Second operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:28,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:28,212 INFO L93 Difference]: Finished difference Result 854 states and 960 transitions. [2022-04-27 22:33:28,212 INFO L276 IsEmpty]: Start isEmpty. Operand 854 states and 960 transitions. [2022-04-27 22:33:28,216 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:28,216 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:28,217 INFO L74 IsIncluded]: Start isIncluded. First operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) Second operand 854 states. [2022-04-27 22:33:28,217 INFO L87 Difference]: Start difference. First operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) Second operand 854 states. [2022-04-27 22:33:28,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:28,249 INFO L93 Difference]: Finished difference Result 854 states and 960 transitions. [2022-04-27 22:33:28,249 INFO L276 IsEmpty]: Start isEmpty. Operand 854 states and 960 transitions. [2022-04-27 22:33:28,253 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:28,253 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:28,253 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:33:28,253 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:33:28,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (56), 29 states have call predecessors, (56), 29 states have call successors, (56) [2022-04-27 22:33:28,287 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 824 states to 824 states and 930 transitions. [2022-04-27 22:33:28,287 INFO L78 Accepts]: Start accepts. Automaton has 824 states and 930 transitions. Word has length 54 [2022-04-27 22:33:28,287 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:33:28,287 INFO L495 AbstractCegarLoop]: Abstraction has 824 states and 930 transitions. [2022-04-27 22:33:28,288 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.6666666666666665) internal successors, (56), 20 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:28,288 INFO L276 IsEmpty]: Start isEmpty. Operand 824 states and 930 transitions. [2022-04-27 22:33:28,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 22:33:28,294 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:33:28,294 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 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-27 22:33:28,319 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (70)] Forceful destruction successful, exit code 0 [2022-04-27 22:33:28,507 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable78,70 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:33:28,507 INFO L420 AbstractCegarLoop]: === Iteration 80 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:33:28,508 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:33:28,508 INFO L85 PathProgramCache]: Analyzing trace with hash -1969690164, now seen corresponding path program 70 times [2022-04-27 22:33:28,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:33:28,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1918080059] [2022-04-27 22:33:28,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:33:28,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:33:28,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:28,580 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:33:28,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:28,582 INFO L290 TraceCheckUtils]: 0: Hoare triple {151068#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {151017#true} is VALID [2022-04-27 22:33:28,582 INFO L290 TraceCheckUtils]: 1: Hoare triple {151017#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:28,582 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {151017#true} {151017#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:28,582 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:33:28,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:28,724 INFO L290 TraceCheckUtils]: 0: Hoare triple {151017#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,726 INFO L290 TraceCheckUtils]: 1: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,726 INFO L290 TraceCheckUtils]: 2: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,727 INFO L290 TraceCheckUtils]: 3: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:28,727 INFO L290 TraceCheckUtils]: 4: Hoare triple {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:28,727 INFO L290 TraceCheckUtils]: 5: Hoare triple {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:28,728 INFO L290 TraceCheckUtils]: 6: Hoare triple {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:28,728 INFO L290 TraceCheckUtils]: 7: Hoare triple {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,729 INFO L290 TraceCheckUtils]: 8: Hoare triple {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,729 INFO L290 TraceCheckUtils]: 9: Hoare triple {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:28,730 INFO L290 TraceCheckUtils]: 10: Hoare triple {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:28,730 INFO L290 TraceCheckUtils]: 11: Hoare triple {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,731 INFO L290 TraceCheckUtils]: 12: Hoare triple {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,731 INFO L290 TraceCheckUtils]: 13: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,731 INFO L290 TraceCheckUtils]: 14: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151080#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:33:28,732 INFO L290 TraceCheckUtils]: 15: Hoare triple {151080#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:28,732 INFO L290 TraceCheckUtils]: 16: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:28,732 INFO L290 TraceCheckUtils]: 17: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:28,732 INFO L290 TraceCheckUtils]: 18: Hoare triple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:28,733 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {151017#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {151042#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:33:28,733 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:33:28,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:28,977 INFO L290 TraceCheckUtils]: 0: Hoare triple {151017#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:28,977 INFO L290 TraceCheckUtils]: 1: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:28,978 INFO L290 TraceCheckUtils]: 2: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:28,978 INFO L290 TraceCheckUtils]: 3: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:28,978 INFO L290 TraceCheckUtils]: 4: Hoare triple {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:28,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:28,979 INFO L290 TraceCheckUtils]: 6: Hoare triple {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:28,980 INFO L290 TraceCheckUtils]: 7: Hoare triple {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:28,980 INFO L290 TraceCheckUtils]: 8: Hoare triple {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:28,980 INFO L290 TraceCheckUtils]: 9: Hoare triple {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:28,981 INFO L290 TraceCheckUtils]: 10: Hoare triple {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:28,981 INFO L290 TraceCheckUtils]: 11: Hoare triple {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:33:28,981 INFO L290 TraceCheckUtils]: 12: Hoare triple {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:28,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:28,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151094#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:33:28,982 INFO L290 TraceCheckUtils]: 15: Hoare triple {151094#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:28,982 INFO L290 TraceCheckUtils]: 16: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:28,983 INFO L290 TraceCheckUtils]: 17: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:28,983 INFO L290 TraceCheckUtils]: 18: Hoare triple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:28,984 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {151064#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:33:28,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {151017#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151068#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:33:28,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {151068#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {151017#true} is VALID [2022-04-27 22:33:28,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {151017#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:28,984 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {151017#true} {151017#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:28,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {151017#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:28,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {151017#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:28,984 INFO L290 TraceCheckUtils]: 6: Hoare triple {151017#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:28,984 INFO L272 TraceCheckUtils]: 7: Hoare triple {151017#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:28,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {151017#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,985 INFO L290 TraceCheckUtils]: 9: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,985 INFO L290 TraceCheckUtils]: 10: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:28,985 INFO L290 TraceCheckUtils]: 11: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:28,986 INFO L290 TraceCheckUtils]: 12: Hoare triple {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:28,986 INFO L290 TraceCheckUtils]: 13: Hoare triple {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:29,009 INFO L290 TraceCheckUtils]: 14: Hoare triple {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:29,010 INFO L290 TraceCheckUtils]: 15: Hoare triple {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,010 INFO L290 TraceCheckUtils]: 16: Hoare triple {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,011 INFO L290 TraceCheckUtils]: 17: Hoare triple {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:29,011 INFO L290 TraceCheckUtils]: 18: Hoare triple {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:29,012 INFO L290 TraceCheckUtils]: 19: Hoare triple {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,012 INFO L290 TraceCheckUtils]: 20: Hoare triple {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,012 INFO L290 TraceCheckUtils]: 21: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,013 INFO L290 TraceCheckUtils]: 22: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151080#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:33:29,013 INFO L290 TraceCheckUtils]: 23: Hoare triple {151080#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:29,014 INFO L290 TraceCheckUtils]: 24: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:29,014 INFO L290 TraceCheckUtils]: 25: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:29,014 INFO L290 TraceCheckUtils]: 26: Hoare triple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:29,015 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {151017#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {151042#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:33:29,015 INFO L290 TraceCheckUtils]: 28: Hoare triple {151042#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:33:29,016 INFO L272 TraceCheckUtils]: 29: Hoare triple {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:29,016 INFO L290 TraceCheckUtils]: 30: Hoare triple {151017#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:29,016 INFO L290 TraceCheckUtils]: 31: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:29,017 INFO L290 TraceCheckUtils]: 32: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:29,017 INFO L290 TraceCheckUtils]: 33: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:29,018 INFO L290 TraceCheckUtils]: 34: Hoare triple {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:29,018 INFO L290 TraceCheckUtils]: 35: Hoare triple {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:29,019 INFO L290 TraceCheckUtils]: 36: Hoare triple {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:29,019 INFO L290 TraceCheckUtils]: 37: Hoare triple {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:29,020 INFO L290 TraceCheckUtils]: 38: Hoare triple {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:29,020 INFO L290 TraceCheckUtils]: 39: Hoare triple {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:29,021 INFO L290 TraceCheckUtils]: 40: Hoare triple {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:29,021 INFO L290 TraceCheckUtils]: 41: Hoare triple {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:33:29,022 INFO L290 TraceCheckUtils]: 42: Hoare triple {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:29,022 INFO L290 TraceCheckUtils]: 43: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:29,022 INFO L290 TraceCheckUtils]: 44: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151094#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:33:29,023 INFO L290 TraceCheckUtils]: 45: Hoare triple {151094#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:29,023 INFO L290 TraceCheckUtils]: 46: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:29,024 INFO L290 TraceCheckUtils]: 47: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:29,024 INFO L290 TraceCheckUtils]: 48: Hoare triple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:29,025 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {151064#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:33:29,026 INFO L290 TraceCheckUtils]: 50: Hoare triple {151064#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {151065#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:33:29,026 INFO L272 TraceCheckUtils]: 51: Hoare triple {151065#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {151066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:33:29,026 INFO L290 TraceCheckUtils]: 52: Hoare triple {151066#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {151067#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:33:29,027 INFO L290 TraceCheckUtils]: 53: Hoare triple {151067#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {151018#false} is VALID [2022-04-27 22:33:29,027 INFO L290 TraceCheckUtils]: 54: Hoare triple {151018#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151018#false} is VALID [2022-04-27 22:33:29,027 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 0 proven. 112 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:33:29,027 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:33:29,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1918080059] [2022-04-27 22:33:29,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1918080059] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:33:29,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [262345611] [2022-04-27 22:33:29,027 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:33:29,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:33:29,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:33:29,028 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:33:29,029 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (71)] Waiting until timeout for monitored process [2022-04-27 22:33:29,122 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:33:29,122 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:33:29,123 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 67 conjunts are in the unsatisfiable core [2022-04-27 22:33:29,132 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:29,133 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:33:29,796 INFO L272 TraceCheckUtils]: 0: Hoare triple {151017#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:29,796 INFO L290 TraceCheckUtils]: 1: Hoare triple {151017#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {151017#true} is VALID [2022-04-27 22:33:29,796 INFO L290 TraceCheckUtils]: 2: Hoare triple {151017#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:29,797 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {151017#true} {151017#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:29,797 INFO L272 TraceCheckUtils]: 4: Hoare triple {151017#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:29,797 INFO L290 TraceCheckUtils]: 5: Hoare triple {151017#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:29,797 INFO L290 TraceCheckUtils]: 6: Hoare triple {151017#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:29,797 INFO L272 TraceCheckUtils]: 7: Hoare triple {151017#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:29,797 INFO L290 TraceCheckUtils]: 8: Hoare triple {151017#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,798 INFO L290 TraceCheckUtils]: 9: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,798 INFO L290 TraceCheckUtils]: 10: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,798 INFO L290 TraceCheckUtils]: 11: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:29,799 INFO L290 TraceCheckUtils]: 12: Hoare triple {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:29,799 INFO L290 TraceCheckUtils]: 13: Hoare triple {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:29,800 INFO L290 TraceCheckUtils]: 14: Hoare triple {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:29,800 INFO L290 TraceCheckUtils]: 15: Hoare triple {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,801 INFO L290 TraceCheckUtils]: 16: Hoare triple {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,801 INFO L290 TraceCheckUtils]: 17: Hoare triple {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:29,802 INFO L290 TraceCheckUtils]: 18: Hoare triple {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:29,802 INFO L290 TraceCheckUtils]: 19: Hoare triple {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,803 INFO L290 TraceCheckUtils]: 20: Hoare triple {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,803 INFO L290 TraceCheckUtils]: 21: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,803 INFO L290 TraceCheckUtils]: 22: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151166#(and (<= correct_version_~j~0 10) (= correct_version_~y~0 0) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:29,804 INFO L290 TraceCheckUtils]: 23: Hoare triple {151166#(and (<= correct_version_~j~0 10) (= correct_version_~y~0 0) (<= 10 correct_version_~j~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:29,804 INFO L290 TraceCheckUtils]: 24: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:29,805 INFO L290 TraceCheckUtils]: 25: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:29,805 INFO L290 TraceCheckUtils]: 26: Hoare triple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:29,806 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {151017#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {151042#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:33:29,806 INFO L290 TraceCheckUtils]: 28: Hoare triple {151042#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:33:29,806 INFO L272 TraceCheckUtils]: 29: Hoare triple {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:29,806 INFO L290 TraceCheckUtils]: 30: Hoare triple {151017#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:29,807 INFO L290 TraceCheckUtils]: 31: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:29,807 INFO L290 TraceCheckUtils]: 32: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:29,808 INFO L290 TraceCheckUtils]: 33: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:29,808 INFO L290 TraceCheckUtils]: 34: Hoare triple {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:29,809 INFO L290 TraceCheckUtils]: 35: Hoare triple {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:29,809 INFO L290 TraceCheckUtils]: 36: Hoare triple {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:29,810 INFO L290 TraceCheckUtils]: 37: Hoare triple {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:29,810 INFO L290 TraceCheckUtils]: 38: Hoare triple {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:29,811 INFO L290 TraceCheckUtils]: 39: Hoare triple {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:29,811 INFO L290 TraceCheckUtils]: 40: Hoare triple {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:29,812 INFO L290 TraceCheckUtils]: 41: Hoare triple {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:33:29,812 INFO L290 TraceCheckUtils]: 42: Hoare triple {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:29,812 INFO L290 TraceCheckUtils]: 43: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:29,813 INFO L290 TraceCheckUtils]: 44: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151233#(and (= student_version_~y~1 0) (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:29,813 INFO L290 TraceCheckUtils]: 45: Hoare triple {151233#(and (= student_version_~y~1 0) (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:29,814 INFO L290 TraceCheckUtils]: 46: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:29,814 INFO L290 TraceCheckUtils]: 47: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:29,814 INFO L290 TraceCheckUtils]: 48: Hoare triple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:29,815 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {151249#(and (<= 10 main_~n_stones1~0) (<= 10 |main_#t~ret9|) (<= main_~n_stones1~0 10) (<= |main_#t~ret9| 10))} is VALID [2022-04-27 22:33:29,815 INFO L290 TraceCheckUtils]: 50: Hoare triple {151249#(and (<= 10 main_~n_stones1~0) (<= 10 |main_#t~ret9|) (<= main_~n_stones1~0 10) (<= |main_#t~ret9| 10))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {151253#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones2~0 10) (<= 10 main_~n_stones2~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:33:29,816 INFO L272 TraceCheckUtils]: 51: Hoare triple {151253#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones2~0 10) (<= 10 main_~n_stones2~0) (<= main_~n_stones1~0 10))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {151257#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:33:29,816 INFO L290 TraceCheckUtils]: 52: Hoare triple {151257#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {151261#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:33:29,817 INFO L290 TraceCheckUtils]: 53: Hoare triple {151261#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {151018#false} is VALID [2022-04-27 22:33:29,817 INFO L290 TraceCheckUtils]: 54: Hoare triple {151018#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151018#false} is VALID [2022-04-27 22:33:29,817 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 0 proven. 112 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:33:29,817 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:33:30,354 INFO L290 TraceCheckUtils]: 54: Hoare triple {151018#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151018#false} is VALID [2022-04-27 22:33:30,355 INFO L290 TraceCheckUtils]: 53: Hoare triple {151261#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {151018#false} is VALID [2022-04-27 22:33:30,355 INFO L290 TraceCheckUtils]: 52: Hoare triple {151257#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {151261#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:33:30,356 INFO L272 TraceCheckUtils]: 51: Hoare triple {151065#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {151257#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:33:30,356 INFO L290 TraceCheckUtils]: 50: Hoare triple {151064#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {151065#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:33:30,357 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {151064#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:33:30,357 INFO L290 TraceCheckUtils]: 48: Hoare triple {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:30,358 INFO L290 TraceCheckUtils]: 47: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {151096#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:33:30,358 INFO L290 TraceCheckUtils]: 46: Hoare triple {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:30,358 INFO L290 TraceCheckUtils]: 45: Hoare triple {151094#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151095#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:33:30,359 INFO L290 TraceCheckUtils]: 44: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {151094#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:33:30,359 INFO L290 TraceCheckUtils]: 43: Hoare triple {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:30,360 INFO L290 TraceCheckUtils]: 42: Hoare triple {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151093#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:33:30,360 INFO L290 TraceCheckUtils]: 41: Hoare triple {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151092#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:33:30,361 INFO L290 TraceCheckUtils]: 40: Hoare triple {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151091#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:30,361 INFO L290 TraceCheckUtils]: 39: Hoare triple {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151090#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:30,362 INFO L290 TraceCheckUtils]: 38: Hoare triple {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151089#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:30,362 INFO L290 TraceCheckUtils]: 37: Hoare triple {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151088#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:30,363 INFO L290 TraceCheckUtils]: 36: Hoare triple {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151087#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:30,363 INFO L290 TraceCheckUtils]: 35: Hoare triple {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151086#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:30,364 INFO L290 TraceCheckUtils]: 34: Hoare triple {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151085#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:30,364 INFO L290 TraceCheckUtils]: 33: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {151084#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:30,364 INFO L290 TraceCheckUtils]: 32: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:30,365 INFO L290 TraceCheckUtils]: 31: Hoare triple {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:30,365 INFO L290 TraceCheckUtils]: 30: Hoare triple {151017#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {151083#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:30,365 INFO L272 TraceCheckUtils]: 29: Hoare triple {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:30,366 INFO L290 TraceCheckUtils]: 28: Hoare triple {151042#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {151043#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:33:30,366 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {151017#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {151042#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:33:30,367 INFO L290 TraceCheckUtils]: 26: Hoare triple {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:30,367 INFO L290 TraceCheckUtils]: 25: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {151082#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:33:30,367 INFO L290 TraceCheckUtils]: 24: Hoare triple {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:30,368 INFO L290 TraceCheckUtils]: 23: Hoare triple {151080#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151081#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:33:30,368 INFO L290 TraceCheckUtils]: 22: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {151080#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:33:30,368 INFO L290 TraceCheckUtils]: 21: Hoare triple {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,369 INFO L290 TraceCheckUtils]: 20: Hoare triple {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151079#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,369 INFO L290 TraceCheckUtils]: 19: Hoare triple {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151078#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,370 INFO L290 TraceCheckUtils]: 18: Hoare triple {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151077#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:30,370 INFO L290 TraceCheckUtils]: 17: Hoare triple {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151076#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:30,371 INFO L290 TraceCheckUtils]: 16: Hoare triple {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151075#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151074#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,372 INFO L290 TraceCheckUtils]: 14: Hoare triple {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151073#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:30,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151072#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:30,373 INFO L290 TraceCheckUtils]: 12: Hoare triple {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151071#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:30,373 INFO L290 TraceCheckUtils]: 11: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {151070#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:30,374 INFO L290 TraceCheckUtils]: 10: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,374 INFO L290 TraceCheckUtils]: 9: Hoare triple {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,374 INFO L290 TraceCheckUtils]: 8: Hoare triple {151017#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {151069#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:30,374 INFO L272 TraceCheckUtils]: 7: Hoare triple {151017#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L290 TraceCheckUtils]: 6: Hoare triple {151017#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L290 TraceCheckUtils]: 5: Hoare triple {151017#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L272 TraceCheckUtils]: 4: Hoare triple {151017#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {151017#true} {151017#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L290 TraceCheckUtils]: 2: Hoare triple {151017#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {151017#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L272 TraceCheckUtils]: 0: Hoare triple {151017#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {151017#true} is VALID [2022-04-27 22:33:30,375 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 0 proven. 112 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:33:30,375 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [262345611] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:33:30,375 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:33:30,375 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [37, 36, 36] total 43 [2022-04-27 22:33:30,375 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [726067837] [2022-04-27 22:33:30,376 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:33:30,376 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:33:30,376 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:33:30,376 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:30,419 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:33:30,419 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-04-27 22:33:30,420 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:33:30,420 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-04-27 22:33:30,420 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=1713, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 22:33:30,420 INFO L87 Difference]: Start difference. First operand 824 states and 930 transitions. Second operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:46,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:46,763 INFO L93 Difference]: Finished difference Result 940 states and 1061 transitions. [2022-04-27 22:33:46,763 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2022-04-27 22:33:46,763 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:33:46,764 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:33:46,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:46,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 222 transitions. [2022-04-27 22:33:46,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:46,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 222 transitions. [2022-04-27 22:33:46,767 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 222 transitions. [2022-04-27 22:33:46,885 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 222 edges. 222 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:33:46,931 INFO L225 Difference]: With dead ends: 940 [2022-04-27 22:33:46,931 INFO L226 Difference]: Without dead ends: 934 [2022-04-27 22:33:46,935 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 185 GetRequests, 104 SyntacticMatches, 5 SemanticMatches, 76 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 812 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=265, Invalid=5741, Unknown=0, NotChecked=0, Total=6006 [2022-04-27 22:33:46,936 INFO L413 NwaCegarLoop]: 118 mSDtfsCounter, 253 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 6495 mSolverCounterSat, 54 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 260 SdHoareTripleChecker+Valid, 300 SdHoareTripleChecker+Invalid, 6549 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 54 IncrementalHoareTripleChecker+Valid, 6495 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:33:46,936 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [260 Valid, 300 Invalid, 6549 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [54 Valid, 6495 Invalid, 0 Unknown, 0 Unchecked, 4.0s Time] [2022-04-27 22:33:46,936 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 934 states. [2022-04-27 22:33:53,359 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 934 to 840. [2022-04-27 22:33:53,359 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:33:53,360 INFO L82 GeneralOperation]: Start isEquivalent. First operand 934 states. Second operand has 840 states, 750 states have (on average 1.144) internal successors, (858), 804 states have internal predecessors, (858), 32 states have call successors, (32), 5 states have call predecessors, (32), 57 states have return successors, (59), 30 states have call predecessors, (59), 30 states have call successors, (59) [2022-04-27 22:33:53,360 INFO L74 IsIncluded]: Start isIncluded. First operand 934 states. Second operand has 840 states, 750 states have (on average 1.144) internal successors, (858), 804 states have internal predecessors, (858), 32 states have call successors, (32), 5 states have call predecessors, (32), 57 states have return successors, (59), 30 states have call predecessors, (59), 30 states have call successors, (59) [2022-04-27 22:33:53,361 INFO L87 Difference]: Start difference. First operand 934 states. Second operand has 840 states, 750 states have (on average 1.144) internal successors, (858), 804 states have internal predecessors, (858), 32 states have call successors, (32), 5 states have call predecessors, (32), 57 states have return successors, (59), 30 states have call predecessors, (59), 30 states have call successors, (59) [2022-04-27 22:33:53,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:53,391 INFO L93 Difference]: Finished difference Result 934 states and 1055 transitions. [2022-04-27 22:33:53,391 INFO L276 IsEmpty]: Start isEmpty. Operand 934 states and 1055 transitions. [2022-04-27 22:33:53,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:53,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:53,409 INFO L74 IsIncluded]: Start isIncluded. First operand has 840 states, 750 states have (on average 1.144) internal successors, (858), 804 states have internal predecessors, (858), 32 states have call successors, (32), 5 states have call predecessors, (32), 57 states have return successors, (59), 30 states have call predecessors, (59), 30 states have call successors, (59) Second operand 934 states. [2022-04-27 22:33:53,409 INFO L87 Difference]: Start difference. First operand has 840 states, 750 states have (on average 1.144) internal successors, (858), 804 states have internal predecessors, (858), 32 states have call successors, (32), 5 states have call predecessors, (32), 57 states have return successors, (59), 30 states have call predecessors, (59), 30 states have call successors, (59) Second operand 934 states. [2022-04-27 22:33:53,441 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:33:53,441 INFO L93 Difference]: Finished difference Result 934 states and 1055 transitions. [2022-04-27 22:33:53,441 INFO L276 IsEmpty]: Start isEmpty. Operand 934 states and 1055 transitions. [2022-04-27 22:33:53,446 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:33:53,446 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:33:53,446 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:33:53,446 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:33:53,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 840 states, 750 states have (on average 1.144) internal successors, (858), 804 states have internal predecessors, (858), 32 states have call successors, (32), 5 states have call predecessors, (32), 57 states have return successors, (59), 30 states have call predecessors, (59), 30 states have call successors, (59) [2022-04-27 22:33:53,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 840 states to 840 states and 949 transitions. [2022-04-27 22:33:53,482 INFO L78 Accepts]: Start accepts. Automaton has 840 states and 949 transitions. Word has length 55 [2022-04-27 22:33:53,483 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:33:53,483 INFO L495 AbstractCegarLoop]: Abstraction has 840 states and 949 transitions. [2022-04-27 22:33:53,483 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:53,483 INFO L276 IsEmpty]: Start isEmpty. Operand 840 states and 949 transitions. [2022-04-27 22:33:53,488 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 22:33:53,488 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:33:53,488 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:33:53,513 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (71)] Forceful destruction successful, exit code 0 [2022-04-27 22:33:53,690 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable79,71 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:33:53,691 INFO L420 AbstractCegarLoop]: === Iteration 81 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:33:53,691 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:33:53,691 INFO L85 PathProgramCache]: Analyzing trace with hash -180702025, now seen corresponding path program 71 times [2022-04-27 22:33:53,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:33:53,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1353629208] [2022-04-27 22:33:53,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:33:53,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:33:53,713 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:53,769 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:33:53,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:53,771 INFO L290 TraceCheckUtils]: 0: Hoare triple {156111#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {156060#true} is VALID [2022-04-27 22:33:53,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {156060#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:53,771 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {156060#true} {156060#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:53,771 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:33:53,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:53,975 INFO L290 TraceCheckUtils]: 0: Hoare triple {156060#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:53,976 INFO L290 TraceCheckUtils]: 1: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:53,976 INFO L290 TraceCheckUtils]: 2: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:53,976 INFO L290 TraceCheckUtils]: 3: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:53,977 INFO L290 TraceCheckUtils]: 4: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:53,977 INFO L290 TraceCheckUtils]: 5: Hoare triple {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:53,977 INFO L290 TraceCheckUtils]: 6: Hoare triple {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:53,978 INFO L290 TraceCheckUtils]: 7: Hoare triple {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:53,978 INFO L290 TraceCheckUtils]: 8: Hoare triple {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:53,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:53,979 INFO L290 TraceCheckUtils]: 10: Hoare triple {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:53,979 INFO L290 TraceCheckUtils]: 11: Hoare triple {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:53,980 INFO L290 TraceCheckUtils]: 12: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:53,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156121#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:33:53,981 INFO L290 TraceCheckUtils]: 14: Hoare triple {156121#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156122#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:33:53,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {156122#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:53,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:53,982 INFO L290 TraceCheckUtils]: 17: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:53,982 INFO L290 TraceCheckUtils]: 18: Hoare triple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:53,982 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {156060#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {156085#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:33:53,983 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:33:53,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:54,211 INFO L290 TraceCheckUtils]: 0: Hoare triple {156060#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,211 INFO L290 TraceCheckUtils]: 1: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,212 INFO L290 TraceCheckUtils]: 2: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,212 INFO L290 TraceCheckUtils]: 3: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,212 INFO L290 TraceCheckUtils]: 4: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:54,213 INFO L290 TraceCheckUtils]: 5: Hoare triple {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:54,213 INFO L290 TraceCheckUtils]: 6: Hoare triple {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:54,213 INFO L290 TraceCheckUtils]: 7: Hoare triple {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:54,214 INFO L290 TraceCheckUtils]: 8: Hoare triple {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:54,214 INFO L290 TraceCheckUtils]: 9: Hoare triple {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:54,214 INFO L290 TraceCheckUtils]: 10: Hoare triple {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:54,215 INFO L290 TraceCheckUtils]: 11: Hoare triple {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:54,215 INFO L290 TraceCheckUtils]: 12: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:54,215 INFO L290 TraceCheckUtils]: 13: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156134#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:33:54,216 INFO L290 TraceCheckUtils]: 14: Hoare triple {156134#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156135#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} is VALID [2022-04-27 22:33:54,217 INFO L290 TraceCheckUtils]: 15: Hoare triple {156135#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:54,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:54,217 INFO L290 TraceCheckUtils]: 17: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:54,217 INFO L290 TraceCheckUtils]: 18: Hoare triple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:54,218 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {156107#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:33:54,218 INFO L272 TraceCheckUtils]: 0: Hoare triple {156060#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156111#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:33:54,219 INFO L290 TraceCheckUtils]: 1: Hoare triple {156111#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {156060#true} is VALID [2022-04-27 22:33:54,219 INFO L290 TraceCheckUtils]: 2: Hoare triple {156060#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,219 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {156060#true} {156060#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,219 INFO L272 TraceCheckUtils]: 4: Hoare triple {156060#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {156060#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:54,219 INFO L290 TraceCheckUtils]: 6: Hoare triple {156060#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,219 INFO L272 TraceCheckUtils]: 7: Hoare triple {156060#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:54,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {156060#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,220 INFO L290 TraceCheckUtils]: 10: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,220 INFO L290 TraceCheckUtils]: 11: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,220 INFO L290 TraceCheckUtils]: 12: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:54,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:54,221 INFO L290 TraceCheckUtils]: 14: Hoare triple {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:54,222 INFO L290 TraceCheckUtils]: 15: Hoare triple {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:54,222 INFO L290 TraceCheckUtils]: 16: Hoare triple {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,222 INFO L290 TraceCheckUtils]: 17: Hoare triple {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,223 INFO L290 TraceCheckUtils]: 18: Hoare triple {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:54,223 INFO L290 TraceCheckUtils]: 19: Hoare triple {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:54,223 INFO L290 TraceCheckUtils]: 20: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:54,224 INFO L290 TraceCheckUtils]: 21: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156121#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:33:54,224 INFO L290 TraceCheckUtils]: 22: Hoare triple {156121#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156122#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:33:54,224 INFO L290 TraceCheckUtils]: 23: Hoare triple {156122#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:54,225 INFO L290 TraceCheckUtils]: 24: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:54,225 INFO L290 TraceCheckUtils]: 25: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:54,225 INFO L290 TraceCheckUtils]: 26: Hoare triple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:54,226 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {156060#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {156085#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:33:54,226 INFO L290 TraceCheckUtils]: 28: Hoare triple {156085#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:33:54,226 INFO L272 TraceCheckUtils]: 29: Hoare triple {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:54,226 INFO L290 TraceCheckUtils]: 30: Hoare triple {156060#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,227 INFO L290 TraceCheckUtils]: 31: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,227 INFO L290 TraceCheckUtils]: 32: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,227 INFO L290 TraceCheckUtils]: 33: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,227 INFO L290 TraceCheckUtils]: 34: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:54,228 INFO L290 TraceCheckUtils]: 35: Hoare triple {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:54,228 INFO L290 TraceCheckUtils]: 36: Hoare triple {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:54,229 INFO L290 TraceCheckUtils]: 37: Hoare triple {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:54,229 INFO L290 TraceCheckUtils]: 38: Hoare triple {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:54,229 INFO L290 TraceCheckUtils]: 39: Hoare triple {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:54,230 INFO L290 TraceCheckUtils]: 40: Hoare triple {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:54,230 INFO L290 TraceCheckUtils]: 41: Hoare triple {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:54,230 INFO L290 TraceCheckUtils]: 42: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:54,230 INFO L290 TraceCheckUtils]: 43: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156134#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:33:54,231 INFO L290 TraceCheckUtils]: 44: Hoare triple {156134#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156135#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} is VALID [2022-04-27 22:33:54,231 INFO L290 TraceCheckUtils]: 45: Hoare triple {156135#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:54,232 INFO L290 TraceCheckUtils]: 46: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:54,232 INFO L290 TraceCheckUtils]: 47: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:54,232 INFO L290 TraceCheckUtils]: 48: Hoare triple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:54,233 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {156107#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:33:54,233 INFO L290 TraceCheckUtils]: 50: Hoare triple {156107#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {156108#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:33:54,233 INFO L272 TraceCheckUtils]: 51: Hoare triple {156108#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {156109#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:33:54,234 INFO L290 TraceCheckUtils]: 52: Hoare triple {156109#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {156110#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:33:54,234 INFO L290 TraceCheckUtils]: 53: Hoare triple {156110#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {156061#false} is VALID [2022-04-27 22:33:54,234 INFO L290 TraceCheckUtils]: 54: Hoare triple {156061#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156061#false} is VALID [2022-04-27 22:33:54,234 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 78 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:33:54,234 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:33:54,234 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1353629208] [2022-04-27 22:33:54,234 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1353629208] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:33:54,234 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1952026143] [2022-04-27 22:33:54,234 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:33:54,235 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:33:54,235 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:33:54,235 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:33:54,237 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (72)] Waiting until timeout for monitored process [2022-04-27 22:33:54,339 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2022-04-27 22:33:54,340 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:33:54,341 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 63 conjunts are in the unsatisfiable core [2022-04-27 22:33:54,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:33:54,349 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:33:54,881 INFO L272 TraceCheckUtils]: 0: Hoare triple {156060#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {156060#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {156060#true} is VALID [2022-04-27 22:33:54,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {156060#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,882 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {156060#true} {156060#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,882 INFO L272 TraceCheckUtils]: 4: Hoare triple {156060#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,882 INFO L290 TraceCheckUtils]: 5: Hoare triple {156060#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:54,882 INFO L290 TraceCheckUtils]: 6: Hoare triple {156060#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:54,882 INFO L272 TraceCheckUtils]: 7: Hoare triple {156060#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:54,882 INFO L290 TraceCheckUtils]: 8: Hoare triple {156060#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,882 INFO L290 TraceCheckUtils]: 9: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,883 INFO L290 TraceCheckUtils]: 10: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,883 INFO L290 TraceCheckUtils]: 11: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,884 INFO L290 TraceCheckUtils]: 12: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:54,884 INFO L290 TraceCheckUtils]: 13: Hoare triple {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:54,885 INFO L290 TraceCheckUtils]: 14: Hoare triple {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:54,885 INFO L290 TraceCheckUtils]: 15: Hoare triple {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:54,885 INFO L290 TraceCheckUtils]: 16: Hoare triple {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,886 INFO L290 TraceCheckUtils]: 17: Hoare triple {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:54,886 INFO L290 TraceCheckUtils]: 18: Hoare triple {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:54,887 INFO L290 TraceCheckUtils]: 19: Hoare triple {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:54,887 INFO L290 TraceCheckUtils]: 20: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:54,887 INFO L290 TraceCheckUtils]: 21: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156204#(and (= correct_version_~y~0 0) (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:54,888 INFO L290 TraceCheckUtils]: 22: Hoare triple {156204#(and (= correct_version_~y~0 0) (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156208#(and (= correct_version_~j~0 correct_version_~y~0) (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:54,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {156208#(and (= correct_version_~j~0 correct_version_~y~0) (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:54,888 INFO L290 TraceCheckUtils]: 24: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:54,889 INFO L290 TraceCheckUtils]: 25: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:54,889 INFO L290 TraceCheckUtils]: 26: Hoare triple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:54,889 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {156060#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {156085#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:33:54,890 INFO L290 TraceCheckUtils]: 28: Hoare triple {156085#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:33:54,890 INFO L272 TraceCheckUtils]: 29: Hoare triple {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:54,890 INFO L290 TraceCheckUtils]: 30: Hoare triple {156060#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,890 INFO L290 TraceCheckUtils]: 31: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,891 INFO L290 TraceCheckUtils]: 32: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,891 INFO L290 TraceCheckUtils]: 33: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:54,891 INFO L290 TraceCheckUtils]: 34: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:54,892 INFO L290 TraceCheckUtils]: 35: Hoare triple {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:54,892 INFO L290 TraceCheckUtils]: 36: Hoare triple {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:54,892 INFO L290 TraceCheckUtils]: 37: Hoare triple {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:54,893 INFO L290 TraceCheckUtils]: 38: Hoare triple {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:54,893 INFO L290 TraceCheckUtils]: 39: Hoare triple {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:54,893 INFO L290 TraceCheckUtils]: 40: Hoare triple {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:54,894 INFO L290 TraceCheckUtils]: 41: Hoare triple {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:54,894 INFO L290 TraceCheckUtils]: 42: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:54,894 INFO L290 TraceCheckUtils]: 43: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156272#(and (= student_version_~y~1 0) (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:54,895 INFO L290 TraceCheckUtils]: 44: Hoare triple {156272#(and (= student_version_~y~1 0) (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156276#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:33:54,895 INFO L290 TraceCheckUtils]: 45: Hoare triple {156276#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:54,895 INFO L290 TraceCheckUtils]: 46: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:54,896 INFO L290 TraceCheckUtils]: 47: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:54,896 INFO L290 TraceCheckUtils]: 48: Hoare triple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:54,896 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {156292#(and (<= 16 |main_#t~ret9|) (<= |main_#t~ret9| 16) (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:33:54,897 INFO L290 TraceCheckUtils]: 50: Hoare triple {156292#(and (<= 16 |main_#t~ret9|) (<= |main_#t~ret9| 16) (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {156296#(and (<= main_~n_stones2~0 16) (<= 16 main_~n_stones1~0) (<= 16 main_~n_stones2~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:33:54,897 INFO L272 TraceCheckUtils]: 51: Hoare triple {156296#(and (<= main_~n_stones2~0 16) (<= 16 main_~n_stones1~0) (<= 16 main_~n_stones2~0) (<= main_~n_stones1~0 16))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {156300#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:33:54,897 INFO L290 TraceCheckUtils]: 52: Hoare triple {156300#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {156304#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:33:54,898 INFO L290 TraceCheckUtils]: 53: Hoare triple {156304#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {156061#false} is VALID [2022-04-27 22:33:54,898 INFO L290 TraceCheckUtils]: 54: Hoare triple {156061#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156061#false} is VALID [2022-04-27 22:33:54,898 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 78 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:33:54,898 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:33:55,252 INFO L290 TraceCheckUtils]: 54: Hoare triple {156061#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156061#false} is VALID [2022-04-27 22:33:55,252 INFO L290 TraceCheckUtils]: 53: Hoare triple {156304#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {156061#false} is VALID [2022-04-27 22:33:55,252 INFO L290 TraceCheckUtils]: 52: Hoare triple {156300#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {156304#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:33:55,253 INFO L272 TraceCheckUtils]: 51: Hoare triple {156108#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {156300#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:33:55,253 INFO L290 TraceCheckUtils]: 50: Hoare triple {156107#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {156108#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:33:55,254 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {156107#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:33:55,254 INFO L290 TraceCheckUtils]: 48: Hoare triple {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:55,254 INFO L290 TraceCheckUtils]: 47: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {156137#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:33:55,255 INFO L290 TraceCheckUtils]: 46: Hoare triple {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:55,255 INFO L290 TraceCheckUtils]: 45: Hoare triple {156135#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156136#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:33:55,256 INFO L290 TraceCheckUtils]: 44: Hoare triple {156134#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156135#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} is VALID [2022-04-27 22:33:55,256 INFO L290 TraceCheckUtils]: 43: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {156134#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:33:55,256 INFO L290 TraceCheckUtils]: 42: Hoare triple {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:55,256 INFO L290 TraceCheckUtils]: 41: Hoare triple {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156133#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:33:55,257 INFO L290 TraceCheckUtils]: 40: Hoare triple {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156132#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:33:55,257 INFO L290 TraceCheckUtils]: 39: Hoare triple {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156131#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:33:55,258 INFO L290 TraceCheckUtils]: 38: Hoare triple {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156130#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:33:55,258 INFO L290 TraceCheckUtils]: 37: Hoare triple {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156129#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:33:55,258 INFO L290 TraceCheckUtils]: 36: Hoare triple {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156128#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:33:55,259 INFO L290 TraceCheckUtils]: 35: Hoare triple {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156127#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:33:55,259 INFO L290 TraceCheckUtils]: 34: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {156126#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:33:55,259 INFO L290 TraceCheckUtils]: 33: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:55,260 INFO L290 TraceCheckUtils]: 32: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:55,260 INFO L290 TraceCheckUtils]: 31: Hoare triple {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:55,260 INFO L290 TraceCheckUtils]: 30: Hoare triple {156060#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {156125#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:33:55,260 INFO L272 TraceCheckUtils]: 29: Hoare triple {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:55,260 INFO L290 TraceCheckUtils]: 28: Hoare triple {156085#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {156086#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:33:55,261 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {156060#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {156085#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:33:55,261 INFO L290 TraceCheckUtils]: 26: Hoare triple {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:55,261 INFO L290 TraceCheckUtils]: 25: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {156124#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:33:55,262 INFO L290 TraceCheckUtils]: 24: Hoare triple {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:55,262 INFO L290 TraceCheckUtils]: 23: Hoare triple {156122#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156123#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:33:55,262 INFO L290 TraceCheckUtils]: 22: Hoare triple {156121#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156122#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:33:55,263 INFO L290 TraceCheckUtils]: 21: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {156121#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:33:55,263 INFO L290 TraceCheckUtils]: 20: Hoare triple {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:55,263 INFO L290 TraceCheckUtils]: 19: Hoare triple {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156120#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:33:55,264 INFO L290 TraceCheckUtils]: 18: Hoare triple {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156119#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:33:55,264 INFO L290 TraceCheckUtils]: 17: Hoare triple {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156118#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:33:55,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156117#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:33:55,265 INFO L290 TraceCheckUtils]: 15: Hoare triple {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156116#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:33:55,265 INFO L290 TraceCheckUtils]: 14: Hoare triple {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156115#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:33:55,266 INFO L290 TraceCheckUtils]: 13: Hoare triple {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156114#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:33:55,266 INFO L290 TraceCheckUtils]: 12: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {156113#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:33:55,266 INFO L290 TraceCheckUtils]: 11: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:55,266 INFO L290 TraceCheckUtils]: 10: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:55,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:55,267 INFO L290 TraceCheckUtils]: 8: Hoare triple {156060#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {156112#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:33:55,267 INFO L272 TraceCheckUtils]: 7: Hoare triple {156060#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:55,267 INFO L290 TraceCheckUtils]: 6: Hoare triple {156060#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:55,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {156060#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {156060#true} is VALID [2022-04-27 22:33:55,267 INFO L272 TraceCheckUtils]: 4: Hoare triple {156060#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:55,267 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {156060#true} {156060#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:55,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {156060#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:55,268 INFO L290 TraceCheckUtils]: 1: Hoare triple {156060#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {156060#true} is VALID [2022-04-27 22:33:55,268 INFO L272 TraceCheckUtils]: 0: Hoare triple {156060#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {156060#true} is VALID [2022-04-27 22:33:55,268 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 78 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:33:55,268 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1952026143] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:33:55,268 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:33:55,268 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [35, 34, 34] total 43 [2022-04-27 22:33:55,268 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [340231065] [2022-04-27 22:33:55,268 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:33:55,269 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:33:55,269 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:33:55,269 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:33:55,296 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:33:55,296 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-04-27 22:33:55,297 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:33:55,297 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-04-27 22:33:55,297 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=1709, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 22:33:55,297 INFO L87 Difference]: Start difference. First operand 840 states and 949 transitions. Second operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:09,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:09,408 INFO L93 Difference]: Finished difference Result 846 states and 954 transitions. [2022-04-27 22:34:09,408 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 36 states. [2022-04-27 22:34:09,408 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:34:09,408 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:34:09,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:09,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 188 transitions. [2022-04-27 22:34:09,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:09,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 188 transitions. [2022-04-27 22:34:09,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 188 transitions. [2022-04-27 22:34:09,529 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 188 edges. 188 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:34:09,578 INFO L225 Difference]: With dead ends: 846 [2022-04-27 22:34:09,578 INFO L226 Difference]: Without dead ends: 824 [2022-04-27 22:34:09,583 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 181 GetRequests, 98 SyntacticMatches, 9 SemanticMatches, 74 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 831 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=267, Invalid=5433, Unknown=0, NotChecked=0, Total=5700 [2022-04-27 22:34:09,584 INFO L413 NwaCegarLoop]: 98 mSDtfsCounter, 186 mSDsluCounter, 177 mSDsCounter, 0 mSdLazyCounter, 5281 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 189 SdHoareTripleChecker+Valid, 275 SdHoareTripleChecker+Invalid, 5321 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 5281 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:34:09,584 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [189 Valid, 275 Invalid, 5321 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 5281 Invalid, 0 Unknown, 0 Unchecked, 3.2s Time] [2022-04-27 22:34:09,585 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 824 states. [2022-04-27 22:34:15,656 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 824 to 824. [2022-04-27 22:34:15,656 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:34:15,657 INFO L82 GeneralOperation]: Start isEquivalent. First operand 824 states. Second operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:34:15,657 INFO L74 IsIncluded]: Start isIncluded. First operand 824 states. Second operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:34:15,658 INFO L87 Difference]: Start difference. First operand 824 states. Second operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:34:15,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:15,684 INFO L93 Difference]: Finished difference Result 824 states and 931 transitions. [2022-04-27 22:34:15,684 INFO L276 IsEmpty]: Start isEmpty. Operand 824 states and 931 transitions. [2022-04-27 22:34:15,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:34:15,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:34:15,690 INFO L74 IsIncluded]: Start isIncluded. First operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) Second operand 824 states. [2022-04-27 22:34:15,690 INFO L87 Difference]: Start difference. First operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) Second operand 824 states. [2022-04-27 22:34:15,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:15,720 INFO L93 Difference]: Finished difference Result 824 states and 931 transitions. [2022-04-27 22:34:15,720 INFO L276 IsEmpty]: Start isEmpty. Operand 824 states and 931 transitions. [2022-04-27 22:34:15,724 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:34:15,724 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:34:15,724 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:34:15,724 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:34:15,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 824 states, 737 states have (on average 1.1438263229308006) internal successors, (843), 789 states have internal predecessors, (843), 31 states have call successors, (31), 5 states have call predecessors, (31), 55 states have return successors, (57), 29 states have call predecessors, (57), 29 states have call successors, (57) [2022-04-27 22:34:15,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 824 states to 824 states and 931 transitions. [2022-04-27 22:34:15,758 INFO L78 Accepts]: Start accepts. Automaton has 824 states and 931 transitions. Word has length 55 [2022-04-27 22:34:15,758 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:34:15,758 INFO L495 AbstractCegarLoop]: Abstraction has 824 states and 931 transitions. [2022-04-27 22:34:15,758 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:15,758 INFO L276 IsEmpty]: Start isEmpty. Operand 824 states and 931 transitions. [2022-04-27 22:34:15,763 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 22:34:15,763 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:34:15,764 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 3, 3, 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] [2022-04-27 22:34:15,780 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (72)] Ended with exit code 0 [2022-04-27 22:34:15,967 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable80,72 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:34:15,967 INFO L420 AbstractCegarLoop]: === Iteration 82 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:34:15,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:34:15,968 INFO L85 PathProgramCache]: Analyzing trace with hash 119567148, now seen corresponding path program 72 times [2022-04-27 22:34:15,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:34:15,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1495343904] [2022-04-27 22:34:15,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:34:15,968 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:34:15,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:16,032 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:34:16,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:16,034 INFO L290 TraceCheckUtils]: 0: Hoare triple {160764#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {160713#true} is VALID [2022-04-27 22:34:16,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {160713#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:16,034 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {160713#true} {160713#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:16,034 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:34:16,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:16,164 INFO L290 TraceCheckUtils]: 0: Hoare triple {160713#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,165 INFO L290 TraceCheckUtils]: 2: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,165 INFO L290 TraceCheckUtils]: 3: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,166 INFO L290 TraceCheckUtils]: 4: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:16,166 INFO L290 TraceCheckUtils]: 6: Hoare triple {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:16,167 INFO L290 TraceCheckUtils]: 7: Hoare triple {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:16,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:16,168 INFO L290 TraceCheckUtils]: 9: Hoare triple {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,168 INFO L290 TraceCheckUtils]: 10: Hoare triple {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,168 INFO L290 TraceCheckUtils]: 11: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160772#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:34:16,169 INFO L290 TraceCheckUtils]: 13: Hoare triple {160772#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160773#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:34:16,169 INFO L290 TraceCheckUtils]: 14: Hoare triple {160773#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160774#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} is VALID [2022-04-27 22:34:16,170 INFO L290 TraceCheckUtils]: 15: Hoare triple {160774#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:16,170 INFO L290 TraceCheckUtils]: 16: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:16,170 INFO L290 TraceCheckUtils]: 17: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:16,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:16,171 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {160713#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {160738#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:34:16,171 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:34:16,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:16,364 INFO L290 TraceCheckUtils]: 0: Hoare triple {160713#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,365 INFO L290 TraceCheckUtils]: 1: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,365 INFO L290 TraceCheckUtils]: 2: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,365 INFO L290 TraceCheckUtils]: 3: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,366 INFO L290 TraceCheckUtils]: 4: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,366 INFO L290 TraceCheckUtils]: 5: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:16,366 INFO L290 TraceCheckUtils]: 6: Hoare triple {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:16,367 INFO L290 TraceCheckUtils]: 7: Hoare triple {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:16,367 INFO L290 TraceCheckUtils]: 8: Hoare triple {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:16,367 INFO L290 TraceCheckUtils]: 9: Hoare triple {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:34:16,368 INFO L290 TraceCheckUtils]: 10: Hoare triple {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:16,368 INFO L290 TraceCheckUtils]: 11: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:16,368 INFO L290 TraceCheckUtils]: 12: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160784#(and (<= 18 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 18))} is VALID [2022-04-27 22:34:16,369 INFO L290 TraceCheckUtils]: 13: Hoare triple {160784#(and (<= 18 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160785#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:34:16,369 INFO L290 TraceCheckUtils]: 14: Hoare triple {160785#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160786#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} is VALID [2022-04-27 22:34:16,370 INFO L290 TraceCheckUtils]: 15: Hoare triple {160786#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:16,370 INFO L290 TraceCheckUtils]: 16: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:16,370 INFO L290 TraceCheckUtils]: 17: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:16,370 INFO L290 TraceCheckUtils]: 18: Hoare triple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:16,371 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {160760#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:34:16,371 INFO L272 TraceCheckUtils]: 0: Hoare triple {160713#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160764#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:34:16,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {160764#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {160713#true} is VALID [2022-04-27 22:34:16,371 INFO L290 TraceCheckUtils]: 2: Hoare triple {160713#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:16,371 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {160713#true} {160713#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:16,372 INFO L272 TraceCheckUtils]: 4: Hoare triple {160713#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:16,372 INFO L290 TraceCheckUtils]: 5: Hoare triple {160713#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:16,372 INFO L290 TraceCheckUtils]: 6: Hoare triple {160713#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:16,372 INFO L272 TraceCheckUtils]: 7: Hoare triple {160713#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:16,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {160713#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,373 INFO L290 TraceCheckUtils]: 10: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,373 INFO L290 TraceCheckUtils]: 11: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,373 INFO L290 TraceCheckUtils]: 12: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:16,374 INFO L290 TraceCheckUtils]: 14: Hoare triple {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:16,374 INFO L290 TraceCheckUtils]: 15: Hoare triple {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:16,374 INFO L290 TraceCheckUtils]: 16: Hoare triple {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:16,375 INFO L290 TraceCheckUtils]: 17: Hoare triple {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,375 INFO L290 TraceCheckUtils]: 18: Hoare triple {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,375 INFO L290 TraceCheckUtils]: 19: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:16,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160772#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:34:16,376 INFO L290 TraceCheckUtils]: 21: Hoare triple {160772#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160773#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:34:16,377 INFO L290 TraceCheckUtils]: 22: Hoare triple {160773#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160774#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} is VALID [2022-04-27 22:34:16,377 INFO L290 TraceCheckUtils]: 23: Hoare triple {160774#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:16,377 INFO L290 TraceCheckUtils]: 24: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:16,377 INFO L290 TraceCheckUtils]: 25: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:16,378 INFO L290 TraceCheckUtils]: 26: Hoare triple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:16,378 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {160713#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {160738#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:34:16,378 INFO L290 TraceCheckUtils]: 28: Hoare triple {160738#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} is VALID [2022-04-27 22:34:16,379 INFO L272 TraceCheckUtils]: 29: Hoare triple {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:16,379 INFO L290 TraceCheckUtils]: 30: Hoare triple {160713#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,379 INFO L290 TraceCheckUtils]: 31: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,379 INFO L290 TraceCheckUtils]: 32: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,380 INFO L290 TraceCheckUtils]: 33: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,380 INFO L290 TraceCheckUtils]: 34: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:16,380 INFO L290 TraceCheckUtils]: 35: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:16,381 INFO L290 TraceCheckUtils]: 36: Hoare triple {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:16,381 INFO L290 TraceCheckUtils]: 37: Hoare triple {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:16,381 INFO L290 TraceCheckUtils]: 38: Hoare triple {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:16,382 INFO L290 TraceCheckUtils]: 39: Hoare triple {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:34:16,382 INFO L290 TraceCheckUtils]: 40: Hoare triple {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:16,382 INFO L290 TraceCheckUtils]: 41: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:16,382 INFO L290 TraceCheckUtils]: 42: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160784#(and (<= 18 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 18))} is VALID [2022-04-27 22:34:16,383 INFO L290 TraceCheckUtils]: 43: Hoare triple {160784#(and (<= 18 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160785#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:34:16,383 INFO L290 TraceCheckUtils]: 44: Hoare triple {160785#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160786#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} is VALID [2022-04-27 22:34:16,384 INFO L290 TraceCheckUtils]: 45: Hoare triple {160786#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:16,384 INFO L290 TraceCheckUtils]: 46: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:16,384 INFO L290 TraceCheckUtils]: 47: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:16,384 INFO L290 TraceCheckUtils]: 48: Hoare triple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:16,385 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {160760#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:34:16,385 INFO L290 TraceCheckUtils]: 50: Hoare triple {160760#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {160761#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:34:16,386 INFO L272 TraceCheckUtils]: 51: Hoare triple {160761#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {160762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:34:16,386 INFO L290 TraceCheckUtils]: 52: Hoare triple {160762#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {160763#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:34:16,386 INFO L290 TraceCheckUtils]: 53: Hoare triple {160763#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {160714#false} is VALID [2022-04-27 22:34:16,386 INFO L290 TraceCheckUtils]: 54: Hoare triple {160714#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160714#false} is VALID [2022-04-27 22:34:16,387 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 54 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:34:16,387 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:34:16,387 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1495343904] [2022-04-27 22:34:16,387 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1495343904] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:34:16,387 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [33687306] [2022-04-27 22:34:16,387 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:34:16,387 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:34:16,387 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:34:16,388 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:34:16,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (73)] Waiting until timeout for monitored process [2022-04-27 22:34:16,485 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-27 22:34:16,485 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:34:16,486 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 59 conjunts are in the unsatisfiable core [2022-04-27 22:34:16,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:16,494 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:34:17,037 INFO L272 TraceCheckUtils]: 0: Hoare triple {160713#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,037 INFO L290 TraceCheckUtils]: 1: Hoare triple {160713#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {160713#true} is VALID [2022-04-27 22:34:17,037 INFO L290 TraceCheckUtils]: 2: Hoare triple {160713#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,037 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {160713#true} {160713#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,037 INFO L272 TraceCheckUtils]: 4: Hoare triple {160713#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,037 INFO L290 TraceCheckUtils]: 5: Hoare triple {160713#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:17,037 INFO L290 TraceCheckUtils]: 6: Hoare triple {160713#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,037 INFO L272 TraceCheckUtils]: 7: Hoare triple {160713#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:17,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {160713#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,038 INFO L290 TraceCheckUtils]: 10: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,039 INFO L290 TraceCheckUtils]: 11: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,039 INFO L290 TraceCheckUtils]: 13: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:17,040 INFO L290 TraceCheckUtils]: 14: Hoare triple {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:17,040 INFO L290 TraceCheckUtils]: 15: Hoare triple {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:17,040 INFO L290 TraceCheckUtils]: 16: Hoare triple {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:17,041 INFO L290 TraceCheckUtils]: 17: Hoare triple {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,041 INFO L290 TraceCheckUtils]: 18: Hoare triple {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,041 INFO L290 TraceCheckUtils]: 19: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,042 INFO L290 TraceCheckUtils]: 20: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160852#(and (<= correct_version_~j~0 6) (= correct_version_~y~0 0) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,042 INFO L290 TraceCheckUtils]: 21: Hoare triple {160852#(and (<= correct_version_~j~0 6) (= correct_version_~y~0 0) (<= 6 correct_version_~j~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160856#(and (<= correct_version_~j~0 6) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,042 INFO L290 TraceCheckUtils]: 22: Hoare triple {160856#(and (<= correct_version_~j~0 6) (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 6 correct_version_~j~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160860#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)))} is VALID [2022-04-27 22:34:17,043 INFO L290 TraceCheckUtils]: 23: Hoare triple {160860#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0) (= correct_version_~y~0 (* correct_version_~j~0 2)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:17,043 INFO L290 TraceCheckUtils]: 24: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:17,043 INFO L290 TraceCheckUtils]: 25: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:17,043 INFO L290 TraceCheckUtils]: 26: Hoare triple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:17,044 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {160713#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {160738#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:34:17,044 INFO L290 TraceCheckUtils]: 28: Hoare triple {160738#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} is VALID [2022-04-27 22:34:17,044 INFO L272 TraceCheckUtils]: 29: Hoare triple {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:17,045 INFO L290 TraceCheckUtils]: 30: Hoare triple {160713#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,045 INFO L290 TraceCheckUtils]: 31: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,045 INFO L290 TraceCheckUtils]: 32: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,045 INFO L290 TraceCheckUtils]: 33: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,046 INFO L290 TraceCheckUtils]: 34: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,046 INFO L290 TraceCheckUtils]: 35: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:17,046 INFO L290 TraceCheckUtils]: 36: Hoare triple {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:17,047 INFO L290 TraceCheckUtils]: 37: Hoare triple {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:17,047 INFO L290 TraceCheckUtils]: 38: Hoare triple {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:17,047 INFO L290 TraceCheckUtils]: 39: Hoare triple {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:34:17,048 INFO L290 TraceCheckUtils]: 40: Hoare triple {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:17,048 INFO L290 TraceCheckUtils]: 41: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:17,048 INFO L290 TraceCheckUtils]: 42: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160921#(and (= student_version_~y~1 0) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:17,049 INFO L290 TraceCheckUtils]: 43: Hoare triple {160921#(and (= student_version_~y~1 0) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160925#(and (= student_version_~j~1 student_version_~y~1) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:17,049 INFO L290 TraceCheckUtils]: 44: Hoare triple {160925#(and (= student_version_~j~1 student_version_~y~1) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160929#(and (= (* 2 student_version_~j~1) student_version_~y~1) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:17,049 INFO L290 TraceCheckUtils]: 45: Hoare triple {160929#(and (= (* 2 student_version_~j~1) student_version_~y~1) (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:17,050 INFO L290 TraceCheckUtils]: 46: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:17,050 INFO L290 TraceCheckUtils]: 47: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:17,050 INFO L290 TraceCheckUtils]: 48: Hoare triple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:17,051 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {160945#(and (<= main_~n_stones1~0 18) (<= 18 |main_#t~ret9|) (<= 18 main_~n_stones1~0) (<= |main_#t~ret9| 18))} is VALID [2022-04-27 22:34:17,051 INFO L290 TraceCheckUtils]: 50: Hoare triple {160945#(and (<= main_~n_stones1~0 18) (<= 18 |main_#t~ret9|) (<= 18 main_~n_stones1~0) (<= |main_#t~ret9| 18))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {160949#(and (<= main_~n_stones1~0 18) (<= main_~n_stones2~0 18) (<= 18 main_~n_stones1~0) (<= 18 main_~n_stones2~0))} is VALID [2022-04-27 22:34:17,051 INFO L272 TraceCheckUtils]: 51: Hoare triple {160949#(and (<= main_~n_stones1~0 18) (<= main_~n_stones2~0 18) (<= 18 main_~n_stones1~0) (<= 18 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {160953#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:34:17,052 INFO L290 TraceCheckUtils]: 52: Hoare triple {160953#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {160957#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:34:17,052 INFO L290 TraceCheckUtils]: 53: Hoare triple {160957#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {160714#false} is VALID [2022-04-27 22:34:17,052 INFO L290 TraceCheckUtils]: 54: Hoare triple {160714#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160714#false} is VALID [2022-04-27 22:34:17,052 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 54 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:34:17,052 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:34:17,416 INFO L290 TraceCheckUtils]: 54: Hoare triple {160714#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160714#false} is VALID [2022-04-27 22:34:17,417 INFO L290 TraceCheckUtils]: 53: Hoare triple {160957#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {160714#false} is VALID [2022-04-27 22:34:17,417 INFO L290 TraceCheckUtils]: 52: Hoare triple {160953#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {160957#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:34:17,417 INFO L272 TraceCheckUtils]: 51: Hoare triple {160761#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {160953#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:34:17,418 INFO L290 TraceCheckUtils]: 50: Hoare triple {160760#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {160761#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:34:17,418 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {160760#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:34:17,418 INFO L290 TraceCheckUtils]: 48: Hoare triple {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:17,419 INFO L290 TraceCheckUtils]: 47: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {160788#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:34:17,419 INFO L290 TraceCheckUtils]: 46: Hoare triple {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:17,419 INFO L290 TraceCheckUtils]: 45: Hoare triple {160786#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160787#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:34:17,420 INFO L290 TraceCheckUtils]: 44: Hoare triple {160785#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160786#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} is VALID [2022-04-27 22:34:17,420 INFO L290 TraceCheckUtils]: 43: Hoare triple {160784#(and (<= 18 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160785#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:34:17,420 INFO L290 TraceCheckUtils]: 42: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {160784#(and (<= 18 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 18))} is VALID [2022-04-27 22:34:17,421 INFO L290 TraceCheckUtils]: 41: Hoare triple {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:17,421 INFO L290 TraceCheckUtils]: 40: Hoare triple {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160783#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:34:17,421 INFO L290 TraceCheckUtils]: 39: Hoare triple {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160782#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:34:17,422 INFO L290 TraceCheckUtils]: 38: Hoare triple {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160781#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:17,422 INFO L290 TraceCheckUtils]: 37: Hoare triple {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160780#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:17,422 INFO L290 TraceCheckUtils]: 36: Hoare triple {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160779#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:17,423 INFO L290 TraceCheckUtils]: 35: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {160778#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:17,423 INFO L290 TraceCheckUtils]: 34: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,423 INFO L290 TraceCheckUtils]: 33: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,424 INFO L290 TraceCheckUtils]: 32: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,424 INFO L290 TraceCheckUtils]: 31: Hoare triple {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,424 INFO L290 TraceCheckUtils]: 30: Hoare triple {160713#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {160777#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:17,424 INFO L272 TraceCheckUtils]: 29: Hoare triple {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:17,425 INFO L290 TraceCheckUtils]: 28: Hoare triple {160738#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {160739#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} is VALID [2022-04-27 22:34:17,425 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {160713#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {160738#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:34:17,425 INFO L290 TraceCheckUtils]: 26: Hoare triple {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:17,426 INFO L290 TraceCheckUtils]: 25: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {160776#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:34:17,426 INFO L290 TraceCheckUtils]: 24: Hoare triple {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:17,426 INFO L290 TraceCheckUtils]: 23: Hoare triple {160774#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160775#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:34:17,427 INFO L290 TraceCheckUtils]: 22: Hoare triple {160773#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160774#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} is VALID [2022-04-27 22:34:17,427 INFO L290 TraceCheckUtils]: 21: Hoare triple {160772#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160773#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:34:17,427 INFO L290 TraceCheckUtils]: 20: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {160772#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:34:17,428 INFO L290 TraceCheckUtils]: 19: Hoare triple {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,428 INFO L290 TraceCheckUtils]: 18: Hoare triple {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160771#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,428 INFO L290 TraceCheckUtils]: 17: Hoare triple {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160770#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,429 INFO L290 TraceCheckUtils]: 16: Hoare triple {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160769#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:17,429 INFO L290 TraceCheckUtils]: 15: Hoare triple {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160768#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:17,429 INFO L290 TraceCheckUtils]: 14: Hoare triple {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160767#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:17,430 INFO L290 TraceCheckUtils]: 13: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {160766#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:17,430 INFO L290 TraceCheckUtils]: 12: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,430 INFO L290 TraceCheckUtils]: 11: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,431 INFO L290 TraceCheckUtils]: 10: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,431 INFO L290 TraceCheckUtils]: 9: Hoare triple {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,431 INFO L290 TraceCheckUtils]: 8: Hoare triple {160713#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {160765#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:17,431 INFO L272 TraceCheckUtils]: 7: Hoare triple {160713#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:17,431 INFO L290 TraceCheckUtils]: 6: Hoare triple {160713#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,431 INFO L290 TraceCheckUtils]: 5: Hoare triple {160713#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {160713#true} is VALID [2022-04-27 22:34:17,432 INFO L272 TraceCheckUtils]: 4: Hoare triple {160713#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {160713#true} {160713#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {160713#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {160713#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {160713#true} is VALID [2022-04-27 22:34:17,432 INFO L272 TraceCheckUtils]: 0: Hoare triple {160713#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {160713#true} is VALID [2022-04-27 22:34:17,432 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 54 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 22:34:17,432 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [33687306] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:34:17,432 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:34:17,432 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [33, 32, 32] total 43 [2022-04-27 22:34:17,432 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [410076843] [2022-04-27 22:34:17,433 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:34:17,433 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:34:17,433 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:34:17,433 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:17,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:34:17,465 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-04-27 22:34:17,465 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:34:17,465 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-04-27 22:34:17,466 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=1705, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 22:34:17,466 INFO L87 Difference]: Start difference. First operand 824 states and 931 transitions. Second operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:28,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:28,172 INFO L93 Difference]: Finished difference Result 830 states and 936 transitions. [2022-04-27 22:34:28,172 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2022-04-27 22:34:28,172 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:34:28,172 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:34:28,172 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:28,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 158 transitions. [2022-04-27 22:34:28,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:28,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 158 transitions. [2022-04-27 22:34:28,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 158 transitions. [2022-04-27 22:34:28,261 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:34:28,298 INFO L225 Difference]: With dead ends: 830 [2022-04-27 22:34:28,298 INFO L226 Difference]: Without dead ends: 806 [2022-04-27 22:34:28,302 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 96 SyntacticMatches, 9 SemanticMatches, 72 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 836 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=269, Invalid=5133, Unknown=0, NotChecked=0, Total=5402 [2022-04-27 22:34:28,302 INFO L413 NwaCegarLoop]: 78 mSDtfsCounter, 151 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 4123 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 153 SdHoareTripleChecker+Valid, 250 SdHoareTripleChecker+Invalid, 4163 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 4123 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:34:28,302 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [153 Valid, 250 Invalid, 4163 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 4123 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-04-27 22:34:28,303 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 806 states. [2022-04-27 22:34:34,364 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 806 to 806. [2022-04-27 22:34:34,364 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:34:34,365 INFO L82 GeneralOperation]: Start isEquivalent. First operand 806 states. Second operand has 806 states, 722 states have (on average 1.1440443213296398) internal successors, (826), 772 states have internal predecessors, (826), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (55), 28 states have call predecessors, (55), 28 states have call successors, (55) [2022-04-27 22:34:34,366 INFO L74 IsIncluded]: Start isIncluded. First operand 806 states. Second operand has 806 states, 722 states have (on average 1.1440443213296398) internal successors, (826), 772 states have internal predecessors, (826), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (55), 28 states have call predecessors, (55), 28 states have call successors, (55) [2022-04-27 22:34:34,366 INFO L87 Difference]: Start difference. First operand 806 states. Second operand has 806 states, 722 states have (on average 1.1440443213296398) internal successors, (826), 772 states have internal predecessors, (826), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (55), 28 states have call predecessors, (55), 28 states have call successors, (55) [2022-04-27 22:34:34,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:34,391 INFO L93 Difference]: Finished difference Result 806 states and 911 transitions. [2022-04-27 22:34:34,391 INFO L276 IsEmpty]: Start isEmpty. Operand 806 states and 911 transitions. [2022-04-27 22:34:34,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:34:34,395 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:34:34,396 INFO L74 IsIncluded]: Start isIncluded. First operand has 806 states, 722 states have (on average 1.1440443213296398) internal successors, (826), 772 states have internal predecessors, (826), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (55), 28 states have call predecessors, (55), 28 states have call successors, (55) Second operand 806 states. [2022-04-27 22:34:34,396 INFO L87 Difference]: Start difference. First operand has 806 states, 722 states have (on average 1.1440443213296398) internal successors, (826), 772 states have internal predecessors, (826), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (55), 28 states have call predecessors, (55), 28 states have call successors, (55) Second operand 806 states. [2022-04-27 22:34:34,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:34,420 INFO L93 Difference]: Finished difference Result 806 states and 911 transitions. [2022-04-27 22:34:34,420 INFO L276 IsEmpty]: Start isEmpty. Operand 806 states and 911 transitions. [2022-04-27 22:34:34,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:34:34,424 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:34:34,424 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:34:34,424 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:34:34,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 806 states, 722 states have (on average 1.1440443213296398) internal successors, (826), 772 states have internal predecessors, (826), 30 states have call successors, (30), 5 states have call predecessors, (30), 53 states have return successors, (55), 28 states have call predecessors, (55), 28 states have call successors, (55) [2022-04-27 22:34:34,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 806 states to 806 states and 911 transitions. [2022-04-27 22:34:34,456 INFO L78 Accepts]: Start accepts. Automaton has 806 states and 911 transitions. Word has length 55 [2022-04-27 22:34:34,456 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:34:34,456 INFO L495 AbstractCegarLoop]: Abstraction has 806 states and 911 transitions. [2022-04-27 22:34:34,456 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:34,456 INFO L276 IsEmpty]: Start isEmpty. Operand 806 states and 911 transitions. [2022-04-27 22:34:34,461 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 22:34:34,461 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:34:34,461 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:34:34,480 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (73)] Ended with exit code 0 [2022-04-27 22:34:34,681 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 73 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable81 [2022-04-27 22:34:34,681 INFO L420 AbstractCegarLoop]: === Iteration 83 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:34:34,681 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:34:34,682 INFO L85 PathProgramCache]: Analyzing trace with hash -248588457, now seen corresponding path program 73 times [2022-04-27 22:34:34,682 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:34:34,682 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [791287506] [2022-04-27 22:34:34,682 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:34:34,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:34:34,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:34,740 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:34:34,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:34,742 INFO L290 TraceCheckUtils]: 0: Hoare triple {165327#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {165276#true} is VALID [2022-04-27 22:34:34,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {165276#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:34,742 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {165276#true} {165276#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:34,742 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:34:34,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:34,860 INFO L290 TraceCheckUtils]: 0: Hoare triple {165276#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:34,861 INFO L290 TraceCheckUtils]: 1: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:34,861 INFO L290 TraceCheckUtils]: 2: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:34,873 INFO L290 TraceCheckUtils]: 3: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:34,874 INFO L290 TraceCheckUtils]: 4: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:34,874 INFO L290 TraceCheckUtils]: 5: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:34,875 INFO L290 TraceCheckUtils]: 6: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:34,875 INFO L290 TraceCheckUtils]: 7: Hoare triple {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:34,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:34,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:34,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:34,877 INFO L290 TraceCheckUtils]: 11: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165333#(and (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 16))} is VALID [2022-04-27 22:34:34,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {165333#(and (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 16))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165334#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:34:34,878 INFO L290 TraceCheckUtils]: 13: Hoare triple {165334#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:34:34,879 INFO L290 TraceCheckUtils]: 14: Hoare triple {165335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165336#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:34:34,880 INFO L290 TraceCheckUtils]: 15: Hoare triple {165336#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:34,880 INFO L290 TraceCheckUtils]: 16: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:34,880 INFO L290 TraceCheckUtils]: 17: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:34,881 INFO L290 TraceCheckUtils]: 18: Hoare triple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:34,882 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {165276#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {165301#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:34:34,882 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:34:34,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:35,155 INFO L290 TraceCheckUtils]: 0: Hoare triple {165276#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,156 INFO L290 TraceCheckUtils]: 1: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,156 INFO L290 TraceCheckUtils]: 2: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,157 INFO L290 TraceCheckUtils]: 3: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,157 INFO L290 TraceCheckUtils]: 4: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,157 INFO L290 TraceCheckUtils]: 5: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,158 INFO L290 TraceCheckUtils]: 6: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:35,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:35,159 INFO L290 TraceCheckUtils]: 8: Hoare triple {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:35,159 INFO L290 TraceCheckUtils]: 9: Hoare triple {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:35,160 INFO L290 TraceCheckUtils]: 10: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:35,160 INFO L290 TraceCheckUtils]: 11: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165344#(and (<= 16 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 16))} is VALID [2022-04-27 22:34:35,161 INFO L290 TraceCheckUtils]: 12: Hoare triple {165344#(and (<= 16 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165345#(and (<= 16 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 16))} is VALID [2022-04-27 22:34:35,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {165345#(and (<= 16 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165346#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:34:35,162 INFO L290 TraceCheckUtils]: 14: Hoare triple {165346#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165347#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} is VALID [2022-04-27 22:34:35,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {165347#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:35,163 INFO L290 TraceCheckUtils]: 16: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:35,163 INFO L290 TraceCheckUtils]: 17: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:35,163 INFO L290 TraceCheckUtils]: 18: Hoare triple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:35,164 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {165323#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:34:35,165 INFO L272 TraceCheckUtils]: 0: Hoare triple {165276#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165327#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:34:35,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {165327#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {165276#true} is VALID [2022-04-27 22:34:35,165 INFO L290 TraceCheckUtils]: 2: Hoare triple {165276#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:35,165 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {165276#true} {165276#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:35,165 INFO L272 TraceCheckUtils]: 4: Hoare triple {165276#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:35,165 INFO L290 TraceCheckUtils]: 5: Hoare triple {165276#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:35,165 INFO L290 TraceCheckUtils]: 6: Hoare triple {165276#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:35,165 INFO L272 TraceCheckUtils]: 7: Hoare triple {165276#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:35,166 INFO L290 TraceCheckUtils]: 8: Hoare triple {165276#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:35,166 INFO L290 TraceCheckUtils]: 9: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:35,166 INFO L290 TraceCheckUtils]: 10: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:35,167 INFO L290 TraceCheckUtils]: 11: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:35,167 INFO L290 TraceCheckUtils]: 12: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:35,167 INFO L290 TraceCheckUtils]: 13: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:35,168 INFO L290 TraceCheckUtils]: 14: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:35,168 INFO L290 TraceCheckUtils]: 15: Hoare triple {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:35,169 INFO L290 TraceCheckUtils]: 16: Hoare triple {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:35,169 INFO L290 TraceCheckUtils]: 17: Hoare triple {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:35,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:35,170 INFO L290 TraceCheckUtils]: 19: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165333#(and (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 16))} is VALID [2022-04-27 22:34:35,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {165333#(and (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 16))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165334#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:34:35,171 INFO L290 TraceCheckUtils]: 21: Hoare triple {165334#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:34:35,172 INFO L290 TraceCheckUtils]: 22: Hoare triple {165335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165336#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:34:35,172 INFO L290 TraceCheckUtils]: 23: Hoare triple {165336#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:35,173 INFO L290 TraceCheckUtils]: 24: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:35,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:35,173 INFO L290 TraceCheckUtils]: 26: Hoare triple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:35,174 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {165276#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {165301#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:34:35,174 INFO L290 TraceCheckUtils]: 28: Hoare triple {165301#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:34:35,174 INFO L272 TraceCheckUtils]: 29: Hoare triple {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:35,175 INFO L290 TraceCheckUtils]: 30: Hoare triple {165276#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,175 INFO L290 TraceCheckUtils]: 31: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,176 INFO L290 TraceCheckUtils]: 32: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,176 INFO L290 TraceCheckUtils]: 33: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,177 INFO L290 TraceCheckUtils]: 35: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:35,177 INFO L290 TraceCheckUtils]: 36: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:35,178 INFO L290 TraceCheckUtils]: 37: Hoare triple {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:35,178 INFO L290 TraceCheckUtils]: 38: Hoare triple {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:35,179 INFO L290 TraceCheckUtils]: 39: Hoare triple {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:35,179 INFO L290 TraceCheckUtils]: 40: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:35,179 INFO L290 TraceCheckUtils]: 41: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165344#(and (<= 16 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 16))} is VALID [2022-04-27 22:34:35,180 INFO L290 TraceCheckUtils]: 42: Hoare triple {165344#(and (<= 16 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165345#(and (<= 16 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 16))} is VALID [2022-04-27 22:34:35,180 INFO L290 TraceCheckUtils]: 43: Hoare triple {165345#(and (<= 16 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165346#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:34:35,181 INFO L290 TraceCheckUtils]: 44: Hoare triple {165346#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165347#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} is VALID [2022-04-27 22:34:35,181 INFO L290 TraceCheckUtils]: 45: Hoare triple {165347#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:35,182 INFO L290 TraceCheckUtils]: 46: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:35,182 INFO L290 TraceCheckUtils]: 47: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:35,182 INFO L290 TraceCheckUtils]: 48: Hoare triple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:35,183 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {165323#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:34:35,184 INFO L290 TraceCheckUtils]: 50: Hoare triple {165323#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {165324#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:34:35,184 INFO L272 TraceCheckUtils]: 51: Hoare triple {165324#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {165325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:34:35,185 INFO L290 TraceCheckUtils]: 52: Hoare triple {165325#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {165326#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:34:35,185 INFO L290 TraceCheckUtils]: 53: Hoare triple {165326#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {165277#false} is VALID [2022-04-27 22:34:35,185 INFO L290 TraceCheckUtils]: 54: Hoare triple {165277#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165277#false} is VALID [2022-04-27 22:34:35,185 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:34:35,185 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:34:35,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [791287506] [2022-04-27 22:34:35,185 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [791287506] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:34:35,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1042718100] [2022-04-27 22:34:35,186 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:34:35,186 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:34:35,186 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:34:35,187 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:34:35,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (74)] Waiting until timeout for monitored process [2022-04-27 22:34:35,311 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:35,313 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-27 22:34:35,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:35,323 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:34:36,227 INFO L272 TraceCheckUtils]: 0: Hoare triple {165276#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,227 INFO L290 TraceCheckUtils]: 1: Hoare triple {165276#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {165276#true} is VALID [2022-04-27 22:34:36,227 INFO L290 TraceCheckUtils]: 2: Hoare triple {165276#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,227 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {165276#true} {165276#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,227 INFO L272 TraceCheckUtils]: 4: Hoare triple {165276#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,227 INFO L290 TraceCheckUtils]: 5: Hoare triple {165276#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:36,227 INFO L290 TraceCheckUtils]: 6: Hoare triple {165276#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,227 INFO L272 TraceCheckUtils]: 7: Hoare triple {165276#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:36,228 INFO L290 TraceCheckUtils]: 8: Hoare triple {165276#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,228 INFO L290 TraceCheckUtils]: 9: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,229 INFO L290 TraceCheckUtils]: 10: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,230 INFO L290 TraceCheckUtils]: 11: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,231 INFO L290 TraceCheckUtils]: 12: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,231 INFO L290 TraceCheckUtils]: 13: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,232 INFO L290 TraceCheckUtils]: 14: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:36,232 INFO L290 TraceCheckUtils]: 15: Hoare triple {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:36,233 INFO L290 TraceCheckUtils]: 16: Hoare triple {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:36,233 INFO L290 TraceCheckUtils]: 17: Hoare triple {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,234 INFO L290 TraceCheckUtils]: 18: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,234 INFO L290 TraceCheckUtils]: 19: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165410#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,235 INFO L290 TraceCheckUtils]: 20: Hoare triple {165410#(and (<= 4 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165414#(and (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,235 INFO L290 TraceCheckUtils]: 21: Hoare triple {165414#(and (= (+ correct_version_~y~0 (* (- 1) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165418#(and (= (+ correct_version_~y~0 (* (- 2) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,236 INFO L290 TraceCheckUtils]: 22: Hoare triple {165418#(and (= (+ correct_version_~y~0 (* (- 2) correct_version_~j~0)) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165422#(and (= (+ correct_version_~y~0 (* correct_version_~j~0 (- 3))) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,236 INFO L290 TraceCheckUtils]: 23: Hoare triple {165422#(and (= (+ correct_version_~y~0 (* correct_version_~j~0 (- 3))) 0) (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:36,236 INFO L290 TraceCheckUtils]: 24: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:36,237 INFO L290 TraceCheckUtils]: 25: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:36,237 INFO L290 TraceCheckUtils]: 26: Hoare triple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:36,237 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {165276#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {165301#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:34:36,238 INFO L290 TraceCheckUtils]: 28: Hoare triple {165301#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:34:36,238 INFO L272 TraceCheckUtils]: 29: Hoare triple {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:36,238 INFO L290 TraceCheckUtils]: 30: Hoare triple {165276#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,238 INFO L290 TraceCheckUtils]: 31: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,239 INFO L290 TraceCheckUtils]: 32: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,239 INFO L290 TraceCheckUtils]: 33: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,239 INFO L290 TraceCheckUtils]: 34: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,240 INFO L290 TraceCheckUtils]: 35: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,240 INFO L290 TraceCheckUtils]: 36: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:36,240 INFO L290 TraceCheckUtils]: 37: Hoare triple {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:36,241 INFO L290 TraceCheckUtils]: 38: Hoare triple {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:36,241 INFO L290 TraceCheckUtils]: 39: Hoare triple {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:36,241 INFO L290 TraceCheckUtils]: 40: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:36,242 INFO L290 TraceCheckUtils]: 41: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165480#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:36,242 INFO L290 TraceCheckUtils]: 42: Hoare triple {165480#(and (= student_version_~y~1 0) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165484#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} is VALID [2022-04-27 22:34:36,243 INFO L290 TraceCheckUtils]: 43: Hoare triple {165484#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) 0))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165488#(and (= (* 2 student_version_~j~1) student_version_~y~1) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:36,243 INFO L290 TraceCheckUtils]: 44: Hoare triple {165488#(and (= (* 2 student_version_~j~1) student_version_~y~1) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165492#(and (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:36,244 INFO L290 TraceCheckUtils]: 45: Hoare triple {165492#(and (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 2 student_version_~j~1)) (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:36,244 INFO L290 TraceCheckUtils]: 46: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:36,244 INFO L290 TraceCheckUtils]: 47: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:36,244 INFO L290 TraceCheckUtils]: 48: Hoare triple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:36,245 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {165508#(and (<= 16 |main_#t~ret9|) (<= |main_#t~ret9| 16) (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:34:36,245 INFO L290 TraceCheckUtils]: 50: Hoare triple {165508#(and (<= 16 |main_#t~ret9|) (<= |main_#t~ret9| 16) (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {165512#(and (<= main_~n_stones2~0 16) (<= 16 main_~n_stones1~0) (<= 16 main_~n_stones2~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:34:36,246 INFO L272 TraceCheckUtils]: 51: Hoare triple {165512#(and (<= main_~n_stones2~0 16) (<= 16 main_~n_stones1~0) (<= 16 main_~n_stones2~0) (<= main_~n_stones1~0 16))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {165516#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:34:36,246 INFO L290 TraceCheckUtils]: 52: Hoare triple {165516#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {165520#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:34:36,246 INFO L290 TraceCheckUtils]: 53: Hoare triple {165520#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {165277#false} is VALID [2022-04-27 22:34:36,246 INFO L290 TraceCheckUtils]: 54: Hoare triple {165277#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165277#false} is VALID [2022-04-27 22:34:36,246 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:34:36,247 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:34:36,571 INFO L290 TraceCheckUtils]: 54: Hoare triple {165277#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165277#false} is VALID [2022-04-27 22:34:36,572 INFO L290 TraceCheckUtils]: 53: Hoare triple {165520#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {165277#false} is VALID [2022-04-27 22:34:36,572 INFO L290 TraceCheckUtils]: 52: Hoare triple {165516#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {165520#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:34:36,572 INFO L272 TraceCheckUtils]: 51: Hoare triple {165324#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {165516#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:34:36,573 INFO L290 TraceCheckUtils]: 50: Hoare triple {165323#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {165324#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:34:36,573 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {165323#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:34:36,573 INFO L290 TraceCheckUtils]: 48: Hoare triple {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:36,574 INFO L290 TraceCheckUtils]: 47: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {165349#(and (<= 16 |student_version_#res|) (<= |student_version_#res| 16))} is VALID [2022-04-27 22:34:36,574 INFO L290 TraceCheckUtils]: 46: Hoare triple {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:36,574 INFO L290 TraceCheckUtils]: 45: Hoare triple {165347#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165348#(and (<= 16 student_version_~y~1) (<= student_version_~y~1 16))} is VALID [2022-04-27 22:34:36,575 INFO L290 TraceCheckUtils]: 44: Hoare triple {165346#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165347#(and (<= 16 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 16))} is VALID [2022-04-27 22:34:36,575 INFO L290 TraceCheckUtils]: 43: Hoare triple {165345#(and (<= 16 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165346#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 16) (<= 16 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:34:36,576 INFO L290 TraceCheckUtils]: 42: Hoare triple {165344#(and (<= 16 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 16))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165345#(and (<= 16 (+ student_version_~y~1 (* 3 student_version_~j~1))) (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 16))} is VALID [2022-04-27 22:34:36,576 INFO L290 TraceCheckUtils]: 41: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {165344#(and (<= 16 (+ (* student_version_~j~1 4) student_version_~y~1)) (<= (+ (* student_version_~j~1 4) student_version_~y~1) 16))} is VALID [2022-04-27 22:34:36,576 INFO L290 TraceCheckUtils]: 40: Hoare triple {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:36,576 INFO L290 TraceCheckUtils]: 39: Hoare triple {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165343#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:34:36,577 INFO L290 TraceCheckUtils]: 38: Hoare triple {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165342#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:34:36,577 INFO L290 TraceCheckUtils]: 37: Hoare triple {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165341#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:34:36,578 INFO L290 TraceCheckUtils]: 36: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {165340#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:34:36,578 INFO L290 TraceCheckUtils]: 35: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,578 INFO L290 TraceCheckUtils]: 34: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,579 INFO L290 TraceCheckUtils]: 33: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,579 INFO L290 TraceCheckUtils]: 32: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,579 INFO L290 TraceCheckUtils]: 31: Hoare triple {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,579 INFO L290 TraceCheckUtils]: 30: Hoare triple {165276#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {165339#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:34:36,579 INFO L272 TraceCheckUtils]: 29: Hoare triple {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:36,580 INFO L290 TraceCheckUtils]: 28: Hoare triple {165301#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {165302#(and (<= 16 main_~n_stones1~0) (<= main_~n_stones1~0 16))} is VALID [2022-04-27 22:34:36,580 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} {165276#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {165301#(and (<= |main_#t~ret8| 16) (<= 16 |main_#t~ret8|))} is VALID [2022-04-27 22:34:36,580 INFO L290 TraceCheckUtils]: 26: Hoare triple {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:36,581 INFO L290 TraceCheckUtils]: 25: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {165338#(and (<= |correct_version_#res| 16) (<= 16 |correct_version_#res|))} is VALID [2022-04-27 22:34:36,581 INFO L290 TraceCheckUtils]: 24: Hoare triple {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:36,581 INFO L290 TraceCheckUtils]: 23: Hoare triple {165336#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165337#(and (<= correct_version_~y~0 16) (<= 16 correct_version_~y~0))} is VALID [2022-04-27 22:34:36,582 INFO L290 TraceCheckUtils]: 22: Hoare triple {165335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165336#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 16) (<= 16 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:34:36,582 INFO L290 TraceCheckUtils]: 21: Hoare triple {165334#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165335#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:34:36,582 INFO L290 TraceCheckUtils]: 20: Hoare triple {165333#(and (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 16))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165334#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 16) (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 3))))} is VALID [2022-04-27 22:34:36,583 INFO L290 TraceCheckUtils]: 19: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {165333#(and (<= 16 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 16))} is VALID [2022-04-27 22:34:36,583 INFO L290 TraceCheckUtils]: 18: Hoare triple {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,583 INFO L290 TraceCheckUtils]: 17: Hoare triple {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165332#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:34:36,584 INFO L290 TraceCheckUtils]: 16: Hoare triple {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165331#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:34:36,584 INFO L290 TraceCheckUtils]: 15: Hoare triple {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165330#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:34:36,584 INFO L290 TraceCheckUtils]: 14: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {165329#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:34:36,585 INFO L290 TraceCheckUtils]: 13: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,585 INFO L290 TraceCheckUtils]: 12: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,585 INFO L290 TraceCheckUtils]: 11: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,585 INFO L290 TraceCheckUtils]: 10: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,586 INFO L290 TraceCheckUtils]: 9: Hoare triple {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,586 INFO L290 TraceCheckUtils]: 8: Hoare triple {165276#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {165328#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:34:36,586 INFO L272 TraceCheckUtils]: 7: Hoare triple {165276#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:36,586 INFO L290 TraceCheckUtils]: 6: Hoare triple {165276#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,586 INFO L290 TraceCheckUtils]: 5: Hoare triple {165276#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {165276#true} is VALID [2022-04-27 22:34:36,586 INFO L272 TraceCheckUtils]: 4: Hoare triple {165276#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,586 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {165276#true} {165276#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {165276#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,586 INFO L290 TraceCheckUtils]: 1: Hoare triple {165276#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {165276#true} is VALID [2022-04-27 22:34:36,587 INFO L272 TraceCheckUtils]: 0: Hoare triple {165276#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165276#true} is VALID [2022-04-27 22:34:36,587 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 40 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2022-04-27 22:34:36,587 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1042718100] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:34:36,587 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:34:36,587 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [31, 30, 30] total 43 [2022-04-27 22:34:36,587 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1769320612] [2022-04-27 22:34:36,587 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:34:36,587 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:34:36,588 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:34:36,588 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:36,616 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:34:36,616 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-04-27 22:34:36,616 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:34:36,617 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-04-27 22:34:36,617 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=1701, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 22:34:36,617 INFO L87 Difference]: Start difference. First operand 806 states and 911 transitions. Second operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:45,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:45,999 INFO L93 Difference]: Finished difference Result 812 states and 916 transitions. [2022-04-27 22:34:45,999 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-27 22:34:45,999 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:34:45,999 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:34:45,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:46,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 128 transitions. [2022-04-27 22:34:46,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:46,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 128 transitions. [2022-04-27 22:34:46,001 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 128 transitions. [2022-04-27 22:34:46,077 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:34:46,114 INFO L225 Difference]: With dead ends: 812 [2022-04-27 22:34:46,114 INFO L226 Difference]: Without dead ends: 786 [2022-04-27 22:34:46,117 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 94 SyntacticMatches, 9 SemanticMatches, 70 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 841 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=271, Invalid=4841, Unknown=0, NotChecked=0, Total=5112 [2022-04-27 22:34:46,118 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 115 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 3165 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 3203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 3165 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.7s IncrementalHoareTripleChecker+Time [2022-04-27 22:34:46,118 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [116 Valid, 230 Invalid, 3203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 3165 Invalid, 0 Unknown, 0 Unchecked, 1.7s Time] [2022-04-27 22:34:46,118 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 786 states. [2022-04-27 22:34:51,844 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 786 to 786. [2022-04-27 22:34:51,845 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:34:51,846 INFO L82 GeneralOperation]: Start isEquivalent. First operand 786 states. Second operand has 786 states, 705 states have (on average 1.1446808510638298) internal successors, (807), 753 states have internal predecessors, (807), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (53), 27 states have call predecessors, (53), 27 states have call successors, (53) [2022-04-27 22:34:51,846 INFO L74 IsIncluded]: Start isIncluded. First operand 786 states. Second operand has 786 states, 705 states have (on average 1.1446808510638298) internal successors, (807), 753 states have internal predecessors, (807), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (53), 27 states have call predecessors, (53), 27 states have call successors, (53) [2022-04-27 22:34:51,847 INFO L87 Difference]: Start difference. First operand 786 states. Second operand has 786 states, 705 states have (on average 1.1446808510638298) internal successors, (807), 753 states have internal predecessors, (807), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (53), 27 states have call predecessors, (53), 27 states have call successors, (53) [2022-04-27 22:34:51,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:51,870 INFO L93 Difference]: Finished difference Result 786 states and 889 transitions. [2022-04-27 22:34:51,870 INFO L276 IsEmpty]: Start isEmpty. Operand 786 states and 889 transitions. [2022-04-27 22:34:51,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:34:51,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:34:51,874 INFO L74 IsIncluded]: Start isIncluded. First operand has 786 states, 705 states have (on average 1.1446808510638298) internal successors, (807), 753 states have internal predecessors, (807), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (53), 27 states have call predecessors, (53), 27 states have call successors, (53) Second operand 786 states. [2022-04-27 22:34:51,874 INFO L87 Difference]: Start difference. First operand has 786 states, 705 states have (on average 1.1446808510638298) internal successors, (807), 753 states have internal predecessors, (807), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (53), 27 states have call predecessors, (53), 27 states have call successors, (53) Second operand 786 states. [2022-04-27 22:34:51,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:34:51,896 INFO L93 Difference]: Finished difference Result 786 states and 889 transitions. [2022-04-27 22:34:51,896 INFO L276 IsEmpty]: Start isEmpty. Operand 786 states and 889 transitions. [2022-04-27 22:34:51,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:34:51,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:34:51,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:34:51,900 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:34:51,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 786 states, 705 states have (on average 1.1446808510638298) internal successors, (807), 753 states have internal predecessors, (807), 29 states have call successors, (29), 5 states have call predecessors, (29), 51 states have return successors, (53), 27 states have call predecessors, (53), 27 states have call successors, (53) [2022-04-27 22:34:51,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 786 states to 786 states and 889 transitions. [2022-04-27 22:34:51,928 INFO L78 Accepts]: Start accepts. Automaton has 786 states and 889 transitions. Word has length 55 [2022-04-27 22:34:51,936 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:34:51,936 INFO L495 AbstractCegarLoop]: Abstraction has 786 states and 889 transitions. [2022-04-27 22:34:51,937 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:34:51,937 INFO L276 IsEmpty]: Start isEmpty. Operand 786 states and 889 transitions. [2022-04-27 22:34:51,941 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 22:34:51,941 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:34:51,941 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:34:51,957 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (74)] Forceful destruction successful, exit code 0 [2022-04-27 22:34:52,155 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable82,74 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:34:52,155 INFO L420 AbstractCegarLoop]: === Iteration 84 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:34:52,155 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:34:52,155 INFO L85 PathProgramCache]: Analyzing trace with hash 657110074, now seen corresponding path program 74 times [2022-04-27 22:34:52,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:34:52,156 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2131382170] [2022-04-27 22:34:52,156 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:34:52,156 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:34:52,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:52,183 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:34:52,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:52,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {169783#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {169737#true} is VALID [2022-04-27 22:34:52,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {169737#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:52,185 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {169737#true} {169737#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:52,185 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:34:52,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:52,263 INFO L290 TraceCheckUtils]: 0: Hoare triple {169737#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {169784#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:34:52,264 INFO L290 TraceCheckUtils]: 1: Hoare triple {169784#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169785#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:34:52,264 INFO L290 TraceCheckUtils]: 2: Hoare triple {169785#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169786#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:34:52,265 INFO L290 TraceCheckUtils]: 3: Hoare triple {169786#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169787#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:34:52,265 INFO L290 TraceCheckUtils]: 4: Hoare triple {169787#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169788#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:34:52,265 INFO L290 TraceCheckUtils]: 5: Hoare triple {169788#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169789#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 5 correct_version_~a)))} is VALID [2022-04-27 22:34:52,266 INFO L290 TraceCheckUtils]: 6: Hoare triple {169789#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 5 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {169790#(and (<= |correct_version_#in~n| (* 5 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:34:52,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {169790#(and (<= |correct_version_#in~n| (* 5 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,266 INFO L290 TraceCheckUtils]: 8: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,266 INFO L290 TraceCheckUtils]: 9: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,267 INFO L290 TraceCheckUtils]: 10: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,267 INFO L290 TraceCheckUtils]: 11: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,267 INFO L290 TraceCheckUtils]: 12: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,267 INFO L290 TraceCheckUtils]: 13: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,267 INFO L290 TraceCheckUtils]: 14: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,268 INFO L290 TraceCheckUtils]: 15: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,268 INFO L290 TraceCheckUtils]: 17: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,268 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} {169737#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {169761#(<= main_~n~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:34:52,269 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 22:34:52,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:52,410 INFO L290 TraceCheckUtils]: 0: Hoare triple {169737#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {169792#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,411 INFO L290 TraceCheckUtils]: 1: Hoare triple {169792#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169793#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,411 INFO L290 TraceCheckUtils]: 2: Hoare triple {169793#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169794#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,412 INFO L290 TraceCheckUtils]: 3: Hoare triple {169794#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169795#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,412 INFO L290 TraceCheckUtils]: 4: Hoare triple {169795#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169796#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,413 INFO L290 TraceCheckUtils]: 5: Hoare triple {169796#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169797#(and (= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,413 INFO L290 TraceCheckUtils]: 6: Hoare triple {169797#(and (= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169798#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,413 INFO L290 TraceCheckUtils]: 7: Hoare triple {169798#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {169799#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:34:52,414 INFO L290 TraceCheckUtils]: 8: Hoare triple {169799#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,414 INFO L290 TraceCheckUtils]: 9: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,414 INFO L290 TraceCheckUtils]: 10: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,414 INFO L290 TraceCheckUtils]: 11: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,414 INFO L290 TraceCheckUtils]: 12: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,415 INFO L290 TraceCheckUtils]: 13: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,415 INFO L290 TraceCheckUtils]: 14: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,415 INFO L290 TraceCheckUtils]: 16: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,415 INFO L290 TraceCheckUtils]: 17: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,415 INFO L290 TraceCheckUtils]: 18: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,416 INFO L290 TraceCheckUtils]: 19: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,416 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} {169761#(<= main_~n~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {169738#false} is VALID [2022-04-27 22:34:52,416 INFO L272 TraceCheckUtils]: 0: Hoare triple {169737#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169783#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:34:52,417 INFO L290 TraceCheckUtils]: 1: Hoare triple {169783#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {169737#true} is VALID [2022-04-27 22:34:52,417 INFO L290 TraceCheckUtils]: 2: Hoare triple {169737#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:52,417 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {169737#true} {169737#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:52,417 INFO L272 TraceCheckUtils]: 4: Hoare triple {169737#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:52,417 INFO L290 TraceCheckUtils]: 5: Hoare triple {169737#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:52,417 INFO L290 TraceCheckUtils]: 6: Hoare triple {169737#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:52,417 INFO L272 TraceCheckUtils]: 7: Hoare triple {169737#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:52,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {169737#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {169784#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:34:52,418 INFO L290 TraceCheckUtils]: 9: Hoare triple {169784#(and (<= correct_version_~b~0 0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169785#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:34:52,418 INFO L290 TraceCheckUtils]: 10: Hoare triple {169785#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169786#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:34:52,419 INFO L290 TraceCheckUtils]: 11: Hoare triple {169786#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169787#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:34:52,419 INFO L290 TraceCheckUtils]: 12: Hoare triple {169787#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169788#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:34:52,419 INFO L290 TraceCheckUtils]: 13: Hoare triple {169788#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 4 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169789#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 5 correct_version_~a)))} is VALID [2022-04-27 22:34:52,420 INFO L290 TraceCheckUtils]: 14: Hoare triple {169789#(and (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~b~0 (* 5 correct_version_~a)))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {169790#(and (<= |correct_version_#in~n| (* 5 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:34:52,420 INFO L290 TraceCheckUtils]: 15: Hoare triple {169790#(and (<= |correct_version_#in~n| (* 5 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,420 INFO L290 TraceCheckUtils]: 16: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,420 INFO L290 TraceCheckUtils]: 17: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,420 INFO L290 TraceCheckUtils]: 18: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,421 INFO L290 TraceCheckUtils]: 19: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,421 INFO L290 TraceCheckUtils]: 20: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,421 INFO L290 TraceCheckUtils]: 21: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,421 INFO L290 TraceCheckUtils]: 22: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,421 INFO L290 TraceCheckUtils]: 23: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,422 INFO L290 TraceCheckUtils]: 24: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,422 INFO L290 TraceCheckUtils]: 25: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:52,422 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} {169737#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {169761#(<= main_~n~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:34:52,422 INFO L290 TraceCheckUtils]: 27: Hoare triple {169761#(<= main_~n~0 (* 5 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {169761#(<= main_~n~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:34:52,422 INFO L272 TraceCheckUtils]: 28: Hoare triple {169761#(<= main_~n~0 (* 5 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:52,423 INFO L290 TraceCheckUtils]: 29: Hoare triple {169737#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {169792#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,423 INFO L290 TraceCheckUtils]: 30: Hoare triple {169792#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169793#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,424 INFO L290 TraceCheckUtils]: 31: Hoare triple {169793#(and (<= student_version_~a student_version_~b~1) (= |student_version_#in~a| student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169794#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,424 INFO L290 TraceCheckUtils]: 32: Hoare triple {169794#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169795#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,424 INFO L290 TraceCheckUtils]: 33: Hoare triple {169795#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169796#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,425 INFO L290 TraceCheckUtils]: 34: Hoare triple {169796#(and (= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169797#(and (= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,425 INFO L290 TraceCheckUtils]: 35: Hoare triple {169797#(and (= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~b~1) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169798#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:34:52,425 INFO L290 TraceCheckUtils]: 36: Hoare triple {169798#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) student_version_~n) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {169799#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:34:52,426 INFO L290 TraceCheckUtils]: 37: Hoare triple {169799#(and (= |student_version_#in~a| student_version_~a) (<= (+ (* 5 student_version_~a) 1) |student_version_#in~n|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,426 INFO L290 TraceCheckUtils]: 38: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,426 INFO L290 TraceCheckUtils]: 39: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,426 INFO L290 TraceCheckUtils]: 40: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,426 INFO L290 TraceCheckUtils]: 41: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,427 INFO L290 TraceCheckUtils]: 42: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,427 INFO L290 TraceCheckUtils]: 43: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,427 INFO L290 TraceCheckUtils]: 44: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,427 INFO L290 TraceCheckUtils]: 45: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,427 INFO L290 TraceCheckUtils]: 46: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,428 INFO L290 TraceCheckUtils]: 47: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,428 INFO L290 TraceCheckUtils]: 48: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:52,428 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} {169761#(<= main_~n~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {169738#false} is VALID [2022-04-27 22:34:52,428 INFO L290 TraceCheckUtils]: 50: Hoare triple {169738#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {169738#false} is VALID [2022-04-27 22:34:52,429 INFO L272 TraceCheckUtils]: 51: Hoare triple {169738#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {169738#false} is VALID [2022-04-27 22:34:52,429 INFO L290 TraceCheckUtils]: 52: Hoare triple {169738#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {169738#false} is VALID [2022-04-27 22:34:52,429 INFO L290 TraceCheckUtils]: 53: Hoare triple {169738#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {169738#false} is VALID [2022-04-27 22:34:52,429 INFO L290 TraceCheckUtils]: 54: Hoare triple {169738#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169738#false} is VALID [2022-04-27 22:34:52,429 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 0 proven. 38 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-27 22:34:52,429 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:34:52,429 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2131382170] [2022-04-27 22:34:52,429 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2131382170] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:34:52,429 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [482539971] [2022-04-27 22:34:52,429 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:34:52,429 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:34:52,429 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:34:52,430 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:34:52,431 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (75)] Waiting until timeout for monitored process [2022-04-27 22:34:52,512 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:34:52,512 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:34:52,513 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-27 22:34:52,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:34:52,525 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:34:54,262 INFO L272 TraceCheckUtils]: 0: Hoare triple {169737#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:54,263 INFO L290 TraceCheckUtils]: 1: Hoare triple {169737#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {169737#true} is VALID [2022-04-27 22:34:54,263 INFO L290 TraceCheckUtils]: 2: Hoare triple {169737#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:54,263 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {169737#true} {169737#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:54,263 INFO L272 TraceCheckUtils]: 4: Hoare triple {169737#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:54,263 INFO L290 TraceCheckUtils]: 5: Hoare triple {169737#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:54,263 INFO L290 TraceCheckUtils]: 6: Hoare triple {169737#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:54,263 INFO L272 TraceCheckUtils]: 7: Hoare triple {169737#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:54,264 INFO L290 TraceCheckUtils]: 8: Hoare triple {169737#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {169828#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,264 INFO L290 TraceCheckUtils]: 9: Hoare triple {169828#(and (<= correct_version_~b~0 0) (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169832#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,265 INFO L290 TraceCheckUtils]: 10: Hoare triple {169832#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~b~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169836#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 2 correct_version_~a)))} is VALID [2022-04-27 22:34:54,265 INFO L290 TraceCheckUtils]: 11: Hoare triple {169836#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 2 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169840#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 3 correct_version_~a)))} is VALID [2022-04-27 22:34:54,266 INFO L290 TraceCheckUtils]: 12: Hoare triple {169840#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 3 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169844#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:34:54,267 INFO L290 TraceCheckUtils]: 13: Hoare triple {169844#(and (<= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a |correct_version_#in~a|) (<= correct_version_~b~0 (* 4 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {169848#(and (<= |correct_version_#in~n| correct_version_~n) (<= (div (- correct_version_~b~0) (- 5)) |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,267 INFO L290 TraceCheckUtils]: 14: Hoare triple {169848#(and (<= |correct_version_#in~n| correct_version_~n) (<= (div (- correct_version_~b~0) (- 5)) |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,267 INFO L290 TraceCheckUtils]: 15: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,268 INFO L290 TraceCheckUtils]: 17: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,268 INFO L290 TraceCheckUtils]: 18: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,268 INFO L290 TraceCheckUtils]: 19: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,269 INFO L290 TraceCheckUtils]: 20: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,269 INFO L290 TraceCheckUtils]: 21: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,269 INFO L290 TraceCheckUtils]: 22: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,270 INFO L290 TraceCheckUtils]: 23: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,270 INFO L290 TraceCheckUtils]: 24: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,270 INFO L290 TraceCheckUtils]: 25: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:54,271 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} {169737#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {169761#(<= main_~n~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:34:54,271 INFO L290 TraceCheckUtils]: 27: Hoare triple {169761#(<= main_~n~0 (* 5 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {169761#(<= main_~n~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:34:54,271 INFO L272 TraceCheckUtils]: 28: Hoare triple {169761#(<= main_~n~0 (* 5 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:54,272 INFO L290 TraceCheckUtils]: 29: Hoare triple {169737#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {169897#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:34:54,272 INFO L290 TraceCheckUtils]: 30: Hoare triple {169897#(and (<= 0 student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169901#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:34:54,273 INFO L290 TraceCheckUtils]: 31: Hoare triple {169901#(and (<= student_version_~a student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169905#(and (<= (* 2 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:34:54,274 INFO L290 TraceCheckUtils]: 32: Hoare triple {169905#(and (<= (* 2 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169909#(and (<= (* 3 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:34:54,274 INFO L290 TraceCheckUtils]: 33: Hoare triple {169909#(and (<= (* 3 student_version_~a) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169913#(and (<= (* student_version_~a 4) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:34:54,275 INFO L290 TraceCheckUtils]: 34: Hoare triple {169913#(and (<= (* student_version_~a 4) student_version_~b~1) (<= |student_version_#in~a| student_version_~a) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169917#(and (<= |student_version_#in~a| (div student_version_~b~1 5)) (<= student_version_~n |student_version_#in~n|))} is VALID [2022-04-27 22:34:54,275 INFO L290 TraceCheckUtils]: 35: Hoare triple {169917#(and (<= |student_version_#in~a| (div student_version_~b~1 5)) (<= student_version_~n |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,276 INFO L290 TraceCheckUtils]: 36: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,276 INFO L290 TraceCheckUtils]: 37: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,276 INFO L290 TraceCheckUtils]: 38: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,276 INFO L290 TraceCheckUtils]: 39: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,277 INFO L290 TraceCheckUtils]: 40: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,277 INFO L290 TraceCheckUtils]: 41: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,277 INFO L290 TraceCheckUtils]: 42: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,278 INFO L290 TraceCheckUtils]: 43: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,278 INFO L290 TraceCheckUtils]: 44: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,278 INFO L290 TraceCheckUtils]: 45: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,278 INFO L290 TraceCheckUtils]: 46: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,279 INFO L290 TraceCheckUtils]: 47: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,279 INFO L290 TraceCheckUtils]: 48: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:54,280 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} {169761#(<= main_~n~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {169738#false} is VALID [2022-04-27 22:34:54,280 INFO L290 TraceCheckUtils]: 50: Hoare triple {169738#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {169738#false} is VALID [2022-04-27 22:34:54,280 INFO L272 TraceCheckUtils]: 51: Hoare triple {169738#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {169738#false} is VALID [2022-04-27 22:34:54,280 INFO L290 TraceCheckUtils]: 52: Hoare triple {169738#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {169738#false} is VALID [2022-04-27 22:34:54,280 INFO L290 TraceCheckUtils]: 53: Hoare triple {169738#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {169738#false} is VALID [2022-04-27 22:34:54,280 INFO L290 TraceCheckUtils]: 54: Hoare triple {169738#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169738#false} is VALID [2022-04-27 22:34:54,280 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-27 22:34:54,280 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:34:55,740 INFO L290 TraceCheckUtils]: 54: Hoare triple {169738#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169738#false} is VALID [2022-04-27 22:34:55,740 INFO L290 TraceCheckUtils]: 53: Hoare triple {169738#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {169738#false} is VALID [2022-04-27 22:34:55,740 INFO L290 TraceCheckUtils]: 52: Hoare triple {169738#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {169738#false} is VALID [2022-04-27 22:34:55,740 INFO L272 TraceCheckUtils]: 51: Hoare triple {169738#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {169738#false} is VALID [2022-04-27 22:34:55,740 INFO L290 TraceCheckUtils]: 50: Hoare triple {169738#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {169738#false} is VALID [2022-04-27 22:34:55,741 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} {169761#(<= main_~n~0 (* 5 main_~a~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {169738#false} is VALID [2022-04-27 22:34:55,741 INFO L290 TraceCheckUtils]: 48: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,742 INFO L290 TraceCheckUtils]: 47: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,742 INFO L290 TraceCheckUtils]: 46: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,742 INFO L290 TraceCheckUtils]: 45: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,742 INFO L290 TraceCheckUtils]: 44: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,743 INFO L290 TraceCheckUtils]: 43: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,743 INFO L290 TraceCheckUtils]: 42: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,743 INFO L290 TraceCheckUtils]: 41: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,744 INFO L290 TraceCheckUtils]: 40: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,744 INFO L290 TraceCheckUtils]: 39: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,744 INFO L290 TraceCheckUtils]: 38: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,744 INFO L290 TraceCheckUtils]: 37: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,745 INFO L290 TraceCheckUtils]: 36: Hoare triple {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,745 INFO L290 TraceCheckUtils]: 35: Hoare triple {170038#(or (not (< student_version_~b~1 student_version_~n)) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {169800#(<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|)} is VALID [2022-04-27 22:34:55,746 INFO L290 TraceCheckUtils]: 34: Hoare triple {170042#(or (<= student_version_~n (+ student_version_~b~1 student_version_~a)) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {170038#(or (not (< student_version_~b~1 student_version_~n)) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:34:55,746 INFO L290 TraceCheckUtils]: 33: Hoare triple {170046#(or (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {170042#(or (<= student_version_~n (+ student_version_~b~1 student_version_~a)) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:34:55,747 INFO L290 TraceCheckUtils]: 32: Hoare triple {170050#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|) (<= student_version_~n (+ (* 3 student_version_~a) student_version_~b~1)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {170046#(or (<= student_version_~n (+ student_version_~b~1 (* 2 student_version_~a))) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:34:55,747 INFO L290 TraceCheckUtils]: 31: Hoare triple {170054#(or (<= student_version_~n (+ student_version_~b~1 (* student_version_~a 4))) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {170050#(or (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|) (<= student_version_~n (+ (* 3 student_version_~a) student_version_~b~1)))} is VALID [2022-04-27 22:34:55,748 INFO L290 TraceCheckUtils]: 30: Hoare triple {170058#(or (<= student_version_~n (+ (* 5 student_version_~a) student_version_~b~1)) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {170054#(or (<= student_version_~n (+ student_version_~b~1 (* student_version_~a 4))) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:34:55,748 INFO L290 TraceCheckUtils]: 29: Hoare triple {169737#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {170058#(or (<= student_version_~n (+ (* 5 student_version_~a) student_version_~b~1)) (<= (+ (* 5 |student_version_#in~a|) 1) |student_version_#in~n|))} is VALID [2022-04-27 22:34:55,749 INFO L272 TraceCheckUtils]: 28: Hoare triple {169761#(<= main_~n~0 (* 5 main_~a~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:55,749 INFO L290 TraceCheckUtils]: 27: Hoare triple {169761#(<= main_~n~0 (* 5 main_~a~0))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {169761#(<= main_~n~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:34:55,750 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} {169737#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {169761#(<= main_~n~0 (* 5 main_~a~0))} is VALID [2022-04-27 22:34:55,750 INFO L290 TraceCheckUtils]: 25: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,750 INFO L290 TraceCheckUtils]: 24: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,750 INFO L290 TraceCheckUtils]: 23: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,751 INFO L290 TraceCheckUtils]: 22: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,751 INFO L290 TraceCheckUtils]: 20: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,752 INFO L290 TraceCheckUtils]: 19: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,752 INFO L290 TraceCheckUtils]: 18: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,752 INFO L290 TraceCheckUtils]: 17: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,752 INFO L290 TraceCheckUtils]: 16: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,753 INFO L290 TraceCheckUtils]: 15: Hoare triple {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,753 INFO L290 TraceCheckUtils]: 14: Hoare triple {170107#(or (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)) (< correct_version_~b~0 correct_version_~n))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {169791#(<= |correct_version_#in~n| (* 5 |correct_version_#in~a|))} is VALID [2022-04-27 22:34:55,754 INFO L290 TraceCheckUtils]: 13: Hoare triple {170111#(or (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {170107#(or (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)) (< correct_version_~b~0 correct_version_~n))} is VALID [2022-04-27 22:34:55,754 INFO L290 TraceCheckUtils]: 12: Hoare triple {170115#(or (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n) (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {170111#(or (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~b~0 correct_version_~a) correct_version_~n))} is VALID [2022-04-27 22:34:55,755 INFO L290 TraceCheckUtils]: 11: Hoare triple {170119#(or (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~b~0 (* 3 correct_version_~a)) correct_version_~n))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {170115#(or (< (+ (* 2 correct_version_~a) correct_version_~b~0) correct_version_~n) (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)))} is VALID [2022-04-27 22:34:55,755 INFO L290 TraceCheckUtils]: 10: Hoare triple {170123#(or (< (+ correct_version_~b~0 (* 4 correct_version_~a)) correct_version_~n) (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {170119#(or (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)) (< (+ correct_version_~b~0 (* 3 correct_version_~a)) correct_version_~n))} is VALID [2022-04-27 22:34:55,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {170127#(or (< (+ correct_version_~b~0 (* 5 correct_version_~a)) correct_version_~n) (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {170123#(or (< (+ correct_version_~b~0 (* 4 correct_version_~a)) correct_version_~n) (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)))} is VALID [2022-04-27 22:34:55,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {169737#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {170127#(or (< (+ correct_version_~b~0 (* 5 correct_version_~a)) correct_version_~n) (<= |correct_version_#in~n| (* 5 |correct_version_#in~a|)))} is VALID [2022-04-27 22:34:55,756 INFO L272 TraceCheckUtils]: 7: Hoare triple {169737#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:55,756 INFO L290 TraceCheckUtils]: 6: Hoare triple {169737#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:55,757 INFO L290 TraceCheckUtils]: 5: Hoare triple {169737#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {169737#true} is VALID [2022-04-27 22:34:55,757 INFO L272 TraceCheckUtils]: 4: Hoare triple {169737#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:55,757 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {169737#true} {169737#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:55,757 INFO L290 TraceCheckUtils]: 2: Hoare triple {169737#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:55,757 INFO L290 TraceCheckUtils]: 1: Hoare triple {169737#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {169737#true} is VALID [2022-04-27 22:34:55,757 INFO L272 TraceCheckUtils]: 0: Hoare triple {169737#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169737#true} is VALID [2022-04-27 22:34:55,757 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-27 22:34:55,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [482539971] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:34:55,757 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:34:55,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 17, 17] total 45 [2022-04-27 22:34:55,757 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1734001683] [2022-04-27 22:34:55,758 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:34:55,758 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 55 [2022-04-27 22:34:55,758 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:34:55,758 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:34:55,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:34:55,809 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 45 states [2022-04-27 22:34:55,809 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:34:55,810 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 45 interpolants. [2022-04-27 22:34:55,810 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=157, Invalid=1823, Unknown=0, NotChecked=0, Total=1980 [2022-04-27 22:34:55,810 INFO L87 Difference]: Start difference. First operand 786 states and 889 transitions. Second operand has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:06,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:06,919 INFO L93 Difference]: Finished difference Result 874 states and 995 transitions. [2022-04-27 22:35:06,919 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-27 22:35:06,919 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 55 [2022-04-27 22:35:06,919 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:35:06,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:06,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 150 transitions. [2022-04-27 22:35:06,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:06,921 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 150 transitions. [2022-04-27 22:35:06,921 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 150 transitions. [2022-04-27 22:35:07,077 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:35:07,122 INFO L225 Difference]: With dead ends: 874 [2022-04-27 22:35:07,122 INFO L226 Difference]: Without dead ends: 856 [2022-04-27 22:35:07,126 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 85 SyntacticMatches, 5 SemanticMatches, 67 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 630 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=404, Invalid=4288, Unknown=0, NotChecked=0, Total=4692 [2022-04-27 22:35:07,127 INFO L413 NwaCegarLoop]: 83 mSDtfsCounter, 461 mSDsluCounter, 122 mSDsCounter, 0 mSdLazyCounter, 2736 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 465 SdHoareTripleChecker+Valid, 205 SdHoareTripleChecker+Invalid, 2795 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 2736 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-27 22:35:07,127 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [465 Valid, 205 Invalid, 2795 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 2736 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-27 22:35:07,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 856 states. [2022-04-27 22:35:13,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 856 to 851. [2022-04-27 22:35:13,300 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:35:13,301 INFO L82 GeneralOperation]: Start isEquivalent. First operand 856 states. Second operand has 851 states, 743 states have (on average 1.135935397039031) internal successors, (844), 809 states have internal predecessors, (844), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:13,301 INFO L74 IsIncluded]: Start isIncluded. First operand 856 states. Second operand has 851 states, 743 states have (on average 1.135935397039031) internal successors, (844), 809 states have internal predecessors, (844), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:13,302 INFO L87 Difference]: Start difference. First operand 856 states. Second operand has 851 states, 743 states have (on average 1.135935397039031) internal successors, (844), 809 states have internal predecessors, (844), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:13,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:13,330 INFO L93 Difference]: Finished difference Result 856 states and 967 transitions. [2022-04-27 22:35:13,330 INFO L276 IsEmpty]: Start isEmpty. Operand 856 states and 967 transitions. [2022-04-27 22:35:13,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:35:13,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:35:13,335 INFO L74 IsIncluded]: Start isIncluded. First operand has 851 states, 743 states have (on average 1.135935397039031) internal successors, (844), 809 states have internal predecessors, (844), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) Second operand 856 states. [2022-04-27 22:35:13,335 INFO L87 Difference]: Start difference. First operand has 851 states, 743 states have (on average 1.135935397039031) internal successors, (844), 809 states have internal predecessors, (844), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) Second operand 856 states. [2022-04-27 22:35:13,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:13,364 INFO L93 Difference]: Finished difference Result 856 states and 967 transitions. [2022-04-27 22:35:13,364 INFO L276 IsEmpty]: Start isEmpty. Operand 856 states and 967 transitions. [2022-04-27 22:35:13,368 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:35:13,369 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:35:13,369 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:35:13,369 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:35:13,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 851 states, 743 states have (on average 1.135935397039031) internal successors, (844), 809 states have internal predecessors, (844), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:13,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 851 states to 851 states and 962 transitions. [2022-04-27 22:35:13,405 INFO L78 Accepts]: Start accepts. Automaton has 851 states and 962 transitions. Word has length 55 [2022-04-27 22:35:13,405 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:35:13,405 INFO L495 AbstractCegarLoop]: Abstraction has 851 states and 962 transitions. [2022-04-27 22:35:13,405 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:13,405 INFO L276 IsEmpty]: Start isEmpty. Operand 851 states and 962 transitions. [2022-04-27 22:35:13,410 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 22:35:13,410 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:35:13,410 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:35:13,426 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (75)] Forceful destruction successful, exit code 0 [2022-04-27 22:35:13,627 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable83,75 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:35:13,628 INFO L420 AbstractCegarLoop]: === Iteration 85 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:35:13,628 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:35:13,628 INFO L85 PathProgramCache]: Analyzing trace with hash 1188439180, now seen corresponding path program 75 times [2022-04-27 22:35:13,628 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:35:13,628 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [347043436] [2022-04-27 22:35:13,628 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:35:13,628 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:35:13,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:13,685 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:35:13,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:13,686 INFO L290 TraceCheckUtils]: 0: Hoare triple {174510#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {174459#true} is VALID [2022-04-27 22:35:13,686 INFO L290 TraceCheckUtils]: 1: Hoare triple {174459#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:13,686 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {174459#true} {174459#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:13,687 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:35:13,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:13,820 INFO L290 TraceCheckUtils]: 0: Hoare triple {174459#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:13,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:13,821 INFO L290 TraceCheckUtils]: 2: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:13,821 INFO L290 TraceCheckUtils]: 3: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:13,821 INFO L290 TraceCheckUtils]: 4: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:13,822 INFO L290 TraceCheckUtils]: 5: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:13,822 INFO L290 TraceCheckUtils]: 6: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:13,822 INFO L290 TraceCheckUtils]: 7: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:35:13,823 INFO L290 TraceCheckUtils]: 8: Hoare triple {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:13,823 INFO L290 TraceCheckUtils]: 9: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:13,823 INFO L290 TraceCheckUtils]: 10: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174514#(and (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 10) (<= 10 (+ (* correct_version_~j~0 5) correct_version_~y~0)))} is VALID [2022-04-27 22:35:13,824 INFO L290 TraceCheckUtils]: 11: Hoare triple {174514#(and (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 10) (<= 10 (+ (* correct_version_~j~0 5) correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174515#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 10))} is VALID [2022-04-27 22:35:13,824 INFO L290 TraceCheckUtils]: 12: Hoare triple {174515#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174516#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 10))} is VALID [2022-04-27 22:35:13,824 INFO L290 TraceCheckUtils]: 13: Hoare triple {174516#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174517#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} is VALID [2022-04-27 22:35:13,825 INFO L290 TraceCheckUtils]: 14: Hoare triple {174517#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174518#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:35:13,825 INFO L290 TraceCheckUtils]: 15: Hoare triple {174518#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:13,826 INFO L290 TraceCheckUtils]: 16: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:13,826 INFO L290 TraceCheckUtils]: 17: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:13,826 INFO L290 TraceCheckUtils]: 18: Hoare triple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:13,826 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {174459#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {174484#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:35:13,827 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:35:13,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:13,995 INFO L290 TraceCheckUtils]: 0: Hoare triple {174459#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:13,995 INFO L290 TraceCheckUtils]: 1: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:13,996 INFO L290 TraceCheckUtils]: 2: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:13,996 INFO L290 TraceCheckUtils]: 3: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:13,996 INFO L290 TraceCheckUtils]: 4: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:13,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:13,997 INFO L290 TraceCheckUtils]: 6: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:13,997 INFO L290 TraceCheckUtils]: 7: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:35:13,998 INFO L290 TraceCheckUtils]: 8: Hoare triple {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:13,998 INFO L290 TraceCheckUtils]: 9: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:13,998 INFO L290 TraceCheckUtils]: 10: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174524#(and (<= 10 (+ student_version_~y~1 (* 5 student_version_~j~1))) (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 10))} is VALID [2022-04-27 22:35:13,999 INFO L290 TraceCheckUtils]: 11: Hoare triple {174524#(and (<= 10 (+ student_version_~y~1 (* 5 student_version_~j~1))) (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174525#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 10) (<= 10 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:35:13,999 INFO L290 TraceCheckUtils]: 12: Hoare triple {174525#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 10) (<= 10 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174526#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 10) (<= 10 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:35:13,999 INFO L290 TraceCheckUtils]: 13: Hoare triple {174526#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 10) (<= 10 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174527#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} is VALID [2022-04-27 22:35:14,000 INFO L290 TraceCheckUtils]: 14: Hoare triple {174527#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174528#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:35:14,000 INFO L290 TraceCheckUtils]: 15: Hoare triple {174528#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:14,000 INFO L290 TraceCheckUtils]: 16: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:14,001 INFO L290 TraceCheckUtils]: 17: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:14,001 INFO L290 TraceCheckUtils]: 18: Hoare triple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:14,002 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {174506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:35:14,002 INFO L272 TraceCheckUtils]: 0: Hoare triple {174459#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174510#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:35:14,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {174510#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {174459#true} is VALID [2022-04-27 22:35:14,002 INFO L290 TraceCheckUtils]: 2: Hoare triple {174459#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,002 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {174459#true} {174459#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,002 INFO L272 TraceCheckUtils]: 4: Hoare triple {174459#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {174459#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:14,002 INFO L290 TraceCheckUtils]: 6: Hoare triple {174459#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,002 INFO L272 TraceCheckUtils]: 7: Hoare triple {174459#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:14,003 INFO L290 TraceCheckUtils]: 8: Hoare triple {174459#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,003 INFO L290 TraceCheckUtils]: 9: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,003 INFO L290 TraceCheckUtils]: 10: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,004 INFO L290 TraceCheckUtils]: 11: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,004 INFO L290 TraceCheckUtils]: 12: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,004 INFO L290 TraceCheckUtils]: 13: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,004 INFO L290 TraceCheckUtils]: 14: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,005 INFO L290 TraceCheckUtils]: 15: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:35:14,005 INFO L290 TraceCheckUtils]: 16: Hoare triple {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:14,005 INFO L290 TraceCheckUtils]: 17: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:14,006 INFO L290 TraceCheckUtils]: 18: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174514#(and (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 10) (<= 10 (+ (* correct_version_~j~0 5) correct_version_~y~0)))} is VALID [2022-04-27 22:35:14,006 INFO L290 TraceCheckUtils]: 19: Hoare triple {174514#(and (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 10) (<= 10 (+ (* correct_version_~j~0 5) correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174515#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 10))} is VALID [2022-04-27 22:35:14,007 INFO L290 TraceCheckUtils]: 20: Hoare triple {174515#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174516#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 10))} is VALID [2022-04-27 22:35:14,007 INFO L290 TraceCheckUtils]: 21: Hoare triple {174516#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174517#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} is VALID [2022-04-27 22:35:14,008 INFO L290 TraceCheckUtils]: 22: Hoare triple {174517#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174518#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:35:14,008 INFO L290 TraceCheckUtils]: 23: Hoare triple {174518#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:14,008 INFO L290 TraceCheckUtils]: 24: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:14,008 INFO L290 TraceCheckUtils]: 25: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:14,009 INFO L290 TraceCheckUtils]: 26: Hoare triple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:14,009 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {174459#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {174484#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:35:14,009 INFO L290 TraceCheckUtils]: 28: Hoare triple {174484#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:35:14,009 INFO L272 TraceCheckUtils]: 29: Hoare triple {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:14,010 INFO L290 TraceCheckUtils]: 30: Hoare triple {174459#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,010 INFO L290 TraceCheckUtils]: 31: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,010 INFO L290 TraceCheckUtils]: 32: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,011 INFO L290 TraceCheckUtils]: 33: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,011 INFO L290 TraceCheckUtils]: 34: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,011 INFO L290 TraceCheckUtils]: 35: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,011 INFO L290 TraceCheckUtils]: 36: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,012 INFO L290 TraceCheckUtils]: 37: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:35:14,012 INFO L290 TraceCheckUtils]: 38: Hoare triple {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:14,012 INFO L290 TraceCheckUtils]: 39: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:14,012 INFO L290 TraceCheckUtils]: 40: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174524#(and (<= 10 (+ student_version_~y~1 (* 5 student_version_~j~1))) (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 10))} is VALID [2022-04-27 22:35:14,013 INFO L290 TraceCheckUtils]: 41: Hoare triple {174524#(and (<= 10 (+ student_version_~y~1 (* 5 student_version_~j~1))) (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174525#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 10) (<= 10 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:35:14,013 INFO L290 TraceCheckUtils]: 42: Hoare triple {174525#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 10) (<= 10 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174526#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 10) (<= 10 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:35:14,014 INFO L290 TraceCheckUtils]: 43: Hoare triple {174526#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 10) (<= 10 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174527#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} is VALID [2022-04-27 22:35:14,014 INFO L290 TraceCheckUtils]: 44: Hoare triple {174527#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174528#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:35:14,014 INFO L290 TraceCheckUtils]: 45: Hoare triple {174528#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:14,015 INFO L290 TraceCheckUtils]: 46: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:14,015 INFO L290 TraceCheckUtils]: 47: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:14,015 INFO L290 TraceCheckUtils]: 48: Hoare triple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:14,016 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {174506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:35:14,016 INFO L290 TraceCheckUtils]: 50: Hoare triple {174506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {174507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:35:14,017 INFO L272 TraceCheckUtils]: 51: Hoare triple {174507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {174508#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:35:14,017 INFO L290 TraceCheckUtils]: 52: Hoare triple {174508#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {174509#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:35:14,017 INFO L290 TraceCheckUtils]: 53: Hoare triple {174509#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {174460#false} is VALID [2022-04-27 22:35:14,017 INFO L290 TraceCheckUtils]: 54: Hoare triple {174460#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174460#false} is VALID [2022-04-27 22:35:14,017 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 22:35:14,017 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:35:14,017 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [347043436] [2022-04-27 22:35:14,017 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [347043436] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:35:14,017 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2009430525] [2022-04-27 22:35:14,017 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:35:14,018 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:35:14,019 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:35:14,056 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:35:14,056 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (76)] Waiting until timeout for monitored process [2022-04-27 22:35:14,155 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 22:35:14,155 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:35:14,157 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 51 conjunts are in the unsatisfiable core [2022-04-27 22:35:14,162 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:14,163 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:35:14,816 INFO L272 TraceCheckUtils]: 0: Hoare triple {174459#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {174459#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {174459#true} is VALID [2022-04-27 22:35:14,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {174459#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,816 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {174459#true} {174459#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,816 INFO L272 TraceCheckUtils]: 4: Hoare triple {174459#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,816 INFO L290 TraceCheckUtils]: 5: Hoare triple {174459#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:14,816 INFO L290 TraceCheckUtils]: 6: Hoare triple {174459#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:14,816 INFO L272 TraceCheckUtils]: 7: Hoare triple {174459#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:14,817 INFO L290 TraceCheckUtils]: 8: Hoare triple {174459#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,817 INFO L290 TraceCheckUtils]: 9: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,817 INFO L290 TraceCheckUtils]: 10: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,817 INFO L290 TraceCheckUtils]: 11: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,818 INFO L290 TraceCheckUtils]: 12: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,818 INFO L290 TraceCheckUtils]: 13: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,818 INFO L290 TraceCheckUtils]: 14: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:14,818 INFO L290 TraceCheckUtils]: 15: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:35:14,819 INFO L290 TraceCheckUtils]: 16: Hoare triple {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:14,819 INFO L290 TraceCheckUtils]: 17: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:14,819 INFO L290 TraceCheckUtils]: 18: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174588#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:35:14,820 INFO L290 TraceCheckUtils]: 19: Hoare triple {174588#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174592#(and (<= 2 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:14,820 INFO L290 TraceCheckUtils]: 20: Hoare triple {174592#(and (<= 2 correct_version_~j~0) (= correct_version_~j~0 correct_version_~y~0) (<= correct_version_~j~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174596#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 (* correct_version_~j~0 2)))} is VALID [2022-04-27 22:35:14,820 INFO L290 TraceCheckUtils]: 21: Hoare triple {174596#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 (* correct_version_~j~0 2)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174600#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 (* correct_version_~j~0 3)))} is VALID [2022-04-27 22:35:14,821 INFO L290 TraceCheckUtils]: 22: Hoare triple {174600#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= correct_version_~y~0 (* correct_version_~j~0 3)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174604#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (* correct_version_~j~0 3) (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))))} is VALID [2022-04-27 22:35:14,821 INFO L290 TraceCheckUtils]: 23: Hoare triple {174604#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2) (= (* correct_version_~j~0 3) (+ correct_version_~y~0 (* (- 1) correct_version_~j~0))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:14,821 INFO L290 TraceCheckUtils]: 24: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:14,822 INFO L290 TraceCheckUtils]: 25: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:14,822 INFO L290 TraceCheckUtils]: 26: Hoare triple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:14,822 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {174459#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {174484#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:35:14,823 INFO L290 TraceCheckUtils]: 28: Hoare triple {174484#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:35:14,823 INFO L272 TraceCheckUtils]: 29: Hoare triple {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:14,823 INFO L290 TraceCheckUtils]: 30: Hoare triple {174459#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,823 INFO L290 TraceCheckUtils]: 31: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,824 INFO L290 TraceCheckUtils]: 32: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,824 INFO L290 TraceCheckUtils]: 33: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,824 INFO L290 TraceCheckUtils]: 34: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,824 INFO L290 TraceCheckUtils]: 35: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,825 INFO L290 TraceCheckUtils]: 36: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:14,825 INFO L290 TraceCheckUtils]: 37: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:35:14,825 INFO L290 TraceCheckUtils]: 38: Hoare triple {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:14,826 INFO L290 TraceCheckUtils]: 39: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:14,826 INFO L290 TraceCheckUtils]: 40: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174659#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:14,826 INFO L290 TraceCheckUtils]: 41: Hoare triple {174659#(and (= student_version_~y~1 0) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174663#(and (<= student_version_~j~1 2) (= student_version_~j~1 student_version_~y~1) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:14,826 INFO L290 TraceCheckUtils]: 42: Hoare triple {174663#(and (<= student_version_~j~1 2) (= student_version_~j~1 student_version_~y~1) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174667#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) student_version_~j~1))} is VALID [2022-04-27 22:35:14,827 INFO L290 TraceCheckUtils]: 43: Hoare triple {174667#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1) (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174671#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1) (= student_version_~y~1 (* 3 student_version_~j~1)))} is VALID [2022-04-27 22:35:14,827 INFO L290 TraceCheckUtils]: 44: Hoare triple {174671#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1) (= student_version_~y~1 (* 3 student_version_~j~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174675#(and (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 3 student_version_~j~1)) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:14,828 INFO L290 TraceCheckUtils]: 45: Hoare triple {174675#(and (= (+ student_version_~y~1 (* (- 1) student_version_~j~1)) (* 3 student_version_~j~1)) (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:14,828 INFO L290 TraceCheckUtils]: 46: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:14,828 INFO L290 TraceCheckUtils]: 47: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:14,828 INFO L290 TraceCheckUtils]: 48: Hoare triple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:14,829 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {174691#(and (<= 10 main_~n_stones1~0) (<= 10 |main_#t~ret9|) (<= main_~n_stones1~0 10) (<= |main_#t~ret9| 10))} is VALID [2022-04-27 22:35:14,829 INFO L290 TraceCheckUtils]: 50: Hoare triple {174691#(and (<= 10 main_~n_stones1~0) (<= 10 |main_#t~ret9|) (<= main_~n_stones1~0 10) (<= |main_#t~ret9| 10))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {174695#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones2~0 10) (<= 10 main_~n_stones2~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:35:14,830 INFO L272 TraceCheckUtils]: 51: Hoare triple {174695#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones2~0 10) (<= 10 main_~n_stones2~0) (<= main_~n_stones1~0 10))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {174699#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:35:14,830 INFO L290 TraceCheckUtils]: 52: Hoare triple {174699#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {174703#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:35:14,830 INFO L290 TraceCheckUtils]: 53: Hoare triple {174703#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {174460#false} is VALID [2022-04-27 22:35:14,830 INFO L290 TraceCheckUtils]: 54: Hoare triple {174460#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174460#false} is VALID [2022-04-27 22:35:14,830 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 22:35:14,830 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:35:15,169 INFO L290 TraceCheckUtils]: 54: Hoare triple {174460#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174460#false} is VALID [2022-04-27 22:35:15,170 INFO L290 TraceCheckUtils]: 53: Hoare triple {174703#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {174460#false} is VALID [2022-04-27 22:35:15,170 INFO L290 TraceCheckUtils]: 52: Hoare triple {174699#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {174703#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:35:15,170 INFO L272 TraceCheckUtils]: 51: Hoare triple {174507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {174699#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:35:15,171 INFO L290 TraceCheckUtils]: 50: Hoare triple {174506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {174507#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:35:15,171 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {174506#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:35:15,171 INFO L290 TraceCheckUtils]: 48: Hoare triple {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:15,172 INFO L290 TraceCheckUtils]: 47: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {174530#(and (<= 10 |student_version_#res|) (<= |student_version_#res| 10))} is VALID [2022-04-27 22:35:15,172 INFO L290 TraceCheckUtils]: 46: Hoare triple {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:15,172 INFO L290 TraceCheckUtils]: 45: Hoare triple {174528#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174529#(and (<= student_version_~y~1 10) (<= 10 student_version_~y~1))} is VALID [2022-04-27 22:35:15,173 INFO L290 TraceCheckUtils]: 44: Hoare triple {174527#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174528#(and (<= 10 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 10))} is VALID [2022-04-27 22:35:15,173 INFO L290 TraceCheckUtils]: 43: Hoare triple {174526#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 10) (<= 10 (+ student_version_~y~1 (* 3 student_version_~j~1))))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174527#(and (<= 10 (+ (* 2 student_version_~j~1) student_version_~y~1)) (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 10))} is VALID [2022-04-27 22:35:15,174 INFO L290 TraceCheckUtils]: 42: Hoare triple {174525#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 10) (<= 10 (+ (* student_version_~j~1 4) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174526#(and (<= (+ student_version_~y~1 (* 3 student_version_~j~1)) 10) (<= 10 (+ student_version_~y~1 (* 3 student_version_~j~1))))} is VALID [2022-04-27 22:35:15,174 INFO L290 TraceCheckUtils]: 41: Hoare triple {174524#(and (<= 10 (+ student_version_~y~1 (* 5 student_version_~j~1))) (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174525#(and (<= (+ (* student_version_~j~1 4) student_version_~y~1) 10) (<= 10 (+ (* student_version_~j~1 4) student_version_~y~1)))} is VALID [2022-04-27 22:35:15,174 INFO L290 TraceCheckUtils]: 40: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {174524#(and (<= 10 (+ student_version_~y~1 (* 5 student_version_~j~1))) (<= (+ student_version_~y~1 (* 5 student_version_~j~1)) 10))} is VALID [2022-04-27 22:35:15,174 INFO L290 TraceCheckUtils]: 39: Hoare triple {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:15,175 INFO L290 TraceCheckUtils]: 38: Hoare triple {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174523#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:35:15,175 INFO L290 TraceCheckUtils]: 37: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {174522#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:35:15,176 INFO L290 TraceCheckUtils]: 36: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:15,176 INFO L290 TraceCheckUtils]: 35: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:15,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:15,176 INFO L290 TraceCheckUtils]: 33: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:15,177 INFO L290 TraceCheckUtils]: 32: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:15,177 INFO L290 TraceCheckUtils]: 31: Hoare triple {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:15,177 INFO L290 TraceCheckUtils]: 30: Hoare triple {174459#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {174521#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:35:15,177 INFO L272 TraceCheckUtils]: 29: Hoare triple {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:15,177 INFO L290 TraceCheckUtils]: 28: Hoare triple {174484#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {174485#(and (<= 10 main_~n_stones1~0) (<= main_~n_stones1~0 10))} is VALID [2022-04-27 22:35:15,178 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} {174459#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {174484#(and (<= 10 |main_#t~ret8|) (<= |main_#t~ret8| 10))} is VALID [2022-04-27 22:35:15,178 INFO L290 TraceCheckUtils]: 26: Hoare triple {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:15,178 INFO L290 TraceCheckUtils]: 25: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {174520#(and (<= 10 |correct_version_#res|) (<= |correct_version_#res| 10))} is VALID [2022-04-27 22:35:15,179 INFO L290 TraceCheckUtils]: 24: Hoare triple {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:15,179 INFO L290 TraceCheckUtils]: 23: Hoare triple {174518#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174519#(and (<= 10 correct_version_~y~0) (<= correct_version_~y~0 10))} is VALID [2022-04-27 22:35:15,179 INFO L290 TraceCheckUtils]: 22: Hoare triple {174517#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174518#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 10) (<= 10 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:35:15,180 INFO L290 TraceCheckUtils]: 21: Hoare triple {174516#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174517#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 2))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 10))} is VALID [2022-04-27 22:35:15,180 INFO L290 TraceCheckUtils]: 20: Hoare triple {174515#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174516#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 3))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 3)) 10))} is VALID [2022-04-27 22:35:15,181 INFO L290 TraceCheckUtils]: 19: Hoare triple {174514#(and (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 10) (<= 10 (+ (* correct_version_~j~0 5) correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174515#(and (<= 10 (+ correct_version_~y~0 (* correct_version_~j~0 4))) (<= (+ correct_version_~y~0 (* correct_version_~j~0 4)) 10))} is VALID [2022-04-27 22:35:15,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {174514#(and (<= (+ (* correct_version_~j~0 5) correct_version_~y~0) 10) (<= 10 (+ (* correct_version_~j~0 5) correct_version_~y~0)))} is VALID [2022-04-27 22:35:15,181 INFO L290 TraceCheckUtils]: 17: Hoare triple {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:15,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174513#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:35:15,182 INFO L290 TraceCheckUtils]: 15: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {174512#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:35:15,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:15,182 INFO L290 TraceCheckUtils]: 13: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:15,183 INFO L290 TraceCheckUtils]: 12: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:15,183 INFO L290 TraceCheckUtils]: 11: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:15,183 INFO L290 TraceCheckUtils]: 10: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:15,183 INFO L290 TraceCheckUtils]: 9: Hoare triple {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:15,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {174459#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {174511#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:35:15,184 INFO L272 TraceCheckUtils]: 7: Hoare triple {174459#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L290 TraceCheckUtils]: 6: Hoare triple {174459#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L290 TraceCheckUtils]: 5: Hoare triple {174459#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L272 TraceCheckUtils]: 4: Hoare triple {174459#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {174459#true} {174459#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L290 TraceCheckUtils]: 2: Hoare triple {174459#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L290 TraceCheckUtils]: 1: Hoare triple {174459#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L272 TraceCheckUtils]: 0: Hoare triple {174459#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174459#true} is VALID [2022-04-27 22:35:15,184 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 22:35:15,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2009430525] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:35:15,185 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:35:15,185 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 28, 28] total 43 [2022-04-27 22:35:15,185 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2018870223] [2022-04-27 22:35:15,185 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:35:15,185 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:35:15,185 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:35:15,185 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:35:15,213 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:35:15,213 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 43 states [2022-04-27 22:35:15,214 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:35:15,214 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2022-04-27 22:35:15,214 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=1697, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 22:35:15,214 INFO L87 Difference]: Start difference. First operand 851 states and 962 transitions. Second operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:35:24,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:24,255 INFO L93 Difference]: Finished difference Result 869 states and 984 transitions. [2022-04-27 22:35:24,255 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-27 22:35:24,255 INFO L78 Accepts]: Start accepts. Automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 55 [2022-04-27 22:35:24,255 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:35:24,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:35:24,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 102 transitions. [2022-04-27 22:35:24,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:35:24,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 102 transitions. [2022-04-27 22:35:24,257 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 102 transitions. [2022-04-27 22:35:24,309 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:35:24,347 INFO L225 Difference]: With dead ends: 869 [2022-04-27 22:35:24,347 INFO L226 Difference]: Without dead ends: 851 [2022-04-27 22:35:24,351 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 169 GetRequests, 92 SyntacticMatches, 9 SemanticMatches, 68 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 846 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=273, Invalid=4557, Unknown=0, NotChecked=0, Total=4830 [2022-04-27 22:35:24,351 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 76 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 1850 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 178 SdHoareTripleChecker+Invalid, 1886 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 1850 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:35:24,351 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 178 Invalid, 1886 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 1850 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-27 22:35:24,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 851 states. [2022-04-27 22:35:29,991 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 851 to 846. [2022-04-27 22:35:29,991 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:35:29,992 INFO L82 GeneralOperation]: Start isEquivalent. First operand 851 states. Second operand has 846 states, 738 states have (on average 1.1382113821138211) internal successors, (840), 804 states have internal predecessors, (840), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:29,992 INFO L74 IsIncluded]: Start isIncluded. First operand 851 states. Second operand has 846 states, 738 states have (on average 1.1382113821138211) internal successors, (840), 804 states have internal predecessors, (840), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:29,992 INFO L87 Difference]: Start difference. First operand 851 states. Second operand has 846 states, 738 states have (on average 1.1382113821138211) internal successors, (840), 804 states have internal predecessors, (840), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:30,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:30,025 INFO L93 Difference]: Finished difference Result 851 states and 963 transitions. [2022-04-27 22:35:30,025 INFO L276 IsEmpty]: Start isEmpty. Operand 851 states and 963 transitions. [2022-04-27 22:35:30,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:35:30,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:35:30,031 INFO L74 IsIncluded]: Start isIncluded. First operand has 846 states, 738 states have (on average 1.1382113821138211) internal successors, (840), 804 states have internal predecessors, (840), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) Second operand 851 states. [2022-04-27 22:35:30,031 INFO L87 Difference]: Start difference. First operand has 846 states, 738 states have (on average 1.1382113821138211) internal successors, (840), 804 states have internal predecessors, (840), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) Second operand 851 states. [2022-04-27 22:35:30,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:30,070 INFO L93 Difference]: Finished difference Result 851 states and 963 transitions. [2022-04-27 22:35:30,070 INFO L276 IsEmpty]: Start isEmpty. Operand 851 states and 963 transitions. [2022-04-27 22:35:30,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:35:30,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:35:30,074 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:35:30,074 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:35:30,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 846 states, 738 states have (on average 1.1382113821138211) internal successors, (840), 804 states have internal predecessors, (840), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (80), 36 states have call predecessors, (80), 36 states have call successors, (80) [2022-04-27 22:35:30,109 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 846 states to 846 states and 958 transitions. [2022-04-27 22:35:30,109 INFO L78 Accepts]: Start accepts. Automaton has 846 states and 958 transitions. Word has length 55 [2022-04-27 22:35:30,109 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:35:30,109 INFO L495 AbstractCegarLoop]: Abstraction has 846 states and 958 transitions. [2022-04-27 22:35:30,110 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 43 states, 40 states have (on average 1.375) internal successors, (55), 37 states have internal predecessors, (55), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:35:30,110 INFO L276 IsEmpty]: Start isEmpty. Operand 846 states and 958 transitions. [2022-04-27 22:35:30,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 22:35:30,115 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:35:30,115 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:35:30,132 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (76)] Ended with exit code 0 [2022-04-27 22:35:30,331 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 76 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable84 [2022-04-27 22:35:30,332 INFO L420 AbstractCegarLoop]: === Iteration 86 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:35:30,332 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:35:30,332 INFO L85 PathProgramCache]: Analyzing trace with hash 1923856847, now seen corresponding path program 76 times [2022-04-27 22:35:30,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:35:30,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [792740361] [2022-04-27 22:35:30,332 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:35:30,333 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:35:30,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:30,364 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:35:30,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:30,366 INFO L290 TraceCheckUtils]: 0: Hoare triple {179204#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {179158#true} is VALID [2022-04-27 22:35:30,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {179158#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:30,366 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {179158#true} {179158#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:30,367 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:35:30,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:30,453 INFO L290 TraceCheckUtils]: 0: Hoare triple {179158#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {179205#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,453 INFO L290 TraceCheckUtils]: 1: Hoare triple {179205#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179206#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {179206#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179207#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,454 INFO L290 TraceCheckUtils]: 3: Hoare triple {179207#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179208#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,455 INFO L290 TraceCheckUtils]: 4: Hoare triple {179208#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179209#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,457 INFO L290 TraceCheckUtils]: 5: Hoare triple {179209#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179210#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 5 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,457 INFO L290 TraceCheckUtils]: 6: Hoare triple {179210#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 5 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179211#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 5 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,458 INFO L290 TraceCheckUtils]: 7: Hoare triple {179211#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 5 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {179212#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 5 correct_version_~a) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:35:30,458 INFO L290 TraceCheckUtils]: 8: Hoare triple {179212#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 5 correct_version_~a) 1) |correct_version_#in~n|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,458 INFO L290 TraceCheckUtils]: 9: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,458 INFO L290 TraceCheckUtils]: 10: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,458 INFO L290 TraceCheckUtils]: 11: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,459 INFO L290 TraceCheckUtils]: 14: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,459 INFO L290 TraceCheckUtils]: 15: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,460 INFO L290 TraceCheckUtils]: 17: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,460 INFO L290 TraceCheckUtils]: 18: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,460 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {179158#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} is VALID [2022-04-27 22:35:30,461 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 30 [2022-04-27 22:35:30,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:30,560 INFO L290 TraceCheckUtils]: 0: Hoare triple {179158#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {179214#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {179214#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179215#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {179215#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179216#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,561 INFO L290 TraceCheckUtils]: 3: Hoare triple {179216#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179217#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,562 INFO L290 TraceCheckUtils]: 4: Hoare triple {179217#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179218#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,562 INFO L290 TraceCheckUtils]: 5: Hoare triple {179218#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179219#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 5 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,562 INFO L290 TraceCheckUtils]: 6: Hoare triple {179219#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 5 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {179220#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 5 student_version_~a)))} is VALID [2022-04-27 22:35:30,563 INFO L290 TraceCheckUtils]: 7: Hoare triple {179220#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,563 INFO L290 TraceCheckUtils]: 8: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,563 INFO L290 TraceCheckUtils]: 9: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,563 INFO L290 TraceCheckUtils]: 10: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,563 INFO L290 TraceCheckUtils]: 11: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,564 INFO L290 TraceCheckUtils]: 12: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,564 INFO L290 TraceCheckUtils]: 13: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,564 INFO L290 TraceCheckUtils]: 14: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,564 INFO L290 TraceCheckUtils]: 15: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,564 INFO L290 TraceCheckUtils]: 16: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,565 INFO L290 TraceCheckUtils]: 17: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,565 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {179159#false} is VALID [2022-04-27 22:35:30,565 INFO L272 TraceCheckUtils]: 0: Hoare triple {179158#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179204#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:35:30,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {179204#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {179158#true} is VALID [2022-04-27 22:35:30,566 INFO L290 TraceCheckUtils]: 2: Hoare triple {179158#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:30,566 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {179158#true} {179158#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:30,566 INFO L272 TraceCheckUtils]: 4: Hoare triple {179158#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:30,566 INFO L290 TraceCheckUtils]: 5: Hoare triple {179158#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:30,566 INFO L290 TraceCheckUtils]: 6: Hoare triple {179158#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:30,566 INFO L272 TraceCheckUtils]: 7: Hoare triple {179158#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:30,566 INFO L290 TraceCheckUtils]: 8: Hoare triple {179158#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {179205#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,567 INFO L290 TraceCheckUtils]: 9: Hoare triple {179205#(and (= |correct_version_#in~n| correct_version_~n) (<= 0 correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179206#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,567 INFO L290 TraceCheckUtils]: 10: Hoare triple {179206#(and (= |correct_version_#in~n| correct_version_~n) (<= correct_version_~a correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179207#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,567 INFO L290 TraceCheckUtils]: 11: Hoare triple {179207#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~n| correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179208#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,568 INFO L290 TraceCheckUtils]: 12: Hoare triple {179208#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 3 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179209#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,568 INFO L290 TraceCheckUtils]: 13: Hoare triple {179209#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 4 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179210#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 5 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,569 INFO L290 TraceCheckUtils]: 14: Hoare triple {179210#(and (= |correct_version_#in~n| correct_version_~n) (<= (* 5 correct_version_~a) correct_version_~b~0) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179211#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 5 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:30,569 INFO L290 TraceCheckUtils]: 15: Hoare triple {179211#(and (= |correct_version_#in~n| correct_version_~n) (<= (+ (* 5 correct_version_~a) 1) correct_version_~n) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {179212#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 5 correct_version_~a) 1) |correct_version_#in~n|))} is VALID [2022-04-27 22:35:30,569 INFO L290 TraceCheckUtils]: 16: Hoare triple {179212#(and (= |correct_version_#in~a| correct_version_~a) (<= (+ (* 5 correct_version_~a) 1) |correct_version_#in~n|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,569 INFO L290 TraceCheckUtils]: 17: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,569 INFO L290 TraceCheckUtils]: 18: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,570 INFO L290 TraceCheckUtils]: 19: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,570 INFO L290 TraceCheckUtils]: 20: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,570 INFO L290 TraceCheckUtils]: 21: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,570 INFO L290 TraceCheckUtils]: 22: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,570 INFO L290 TraceCheckUtils]: 23: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,571 INFO L290 TraceCheckUtils]: 24: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,571 INFO L290 TraceCheckUtils]: 25: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,571 INFO L290 TraceCheckUtils]: 26: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,571 INFO L290 TraceCheckUtils]: 27: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:30,572 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {179158#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} is VALID [2022-04-27 22:35:30,572 INFO L290 TraceCheckUtils]: 29: Hoare triple {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} is VALID [2022-04-27 22:35:30,572 INFO L272 TraceCheckUtils]: 30: Hoare triple {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:30,572 INFO L290 TraceCheckUtils]: 31: Hoare triple {179158#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {179214#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,572 INFO L290 TraceCheckUtils]: 32: Hoare triple {179214#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 0) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179215#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,573 INFO L290 TraceCheckUtils]: 33: Hoare triple {179215#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 student_version_~a) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179216#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,573 INFO L290 TraceCheckUtils]: 34: Hoare triple {179216#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 2 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179217#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,574 INFO L290 TraceCheckUtils]: 35: Hoare triple {179217#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 3 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179218#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,574 INFO L290 TraceCheckUtils]: 36: Hoare triple {179218#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* student_version_~a 4)) (= |student_version_#in~n| student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179219#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 5 student_version_~a)) (= |student_version_#in~n| student_version_~n))} is VALID [2022-04-27 22:35:30,574 INFO L290 TraceCheckUtils]: 37: Hoare triple {179219#(and (= |student_version_#in~a| student_version_~a) (<= student_version_~b~1 (* 5 student_version_~a)) (= |student_version_#in~n| student_version_~n))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {179220#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 5 student_version_~a)))} is VALID [2022-04-27 22:35:30,575 INFO L290 TraceCheckUtils]: 38: Hoare triple {179220#(and (= |student_version_#in~a| student_version_~a) (<= |student_version_#in~n| (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,575 INFO L290 TraceCheckUtils]: 39: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,575 INFO L290 TraceCheckUtils]: 40: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,575 INFO L290 TraceCheckUtils]: 41: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,575 INFO L290 TraceCheckUtils]: 42: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,575 INFO L290 TraceCheckUtils]: 43: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,576 INFO L290 TraceCheckUtils]: 44: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,576 INFO L290 TraceCheckUtils]: 45: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,576 INFO L290 TraceCheckUtils]: 46: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,576 INFO L290 TraceCheckUtils]: 47: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,576 INFO L290 TraceCheckUtils]: 48: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:30,577 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {179159#false} is VALID [2022-04-27 22:35:30,577 INFO L290 TraceCheckUtils]: 50: Hoare triple {179159#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {179159#false} is VALID [2022-04-27 22:35:30,577 INFO L272 TraceCheckUtils]: 51: Hoare triple {179159#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {179159#false} is VALID [2022-04-27 22:35:30,577 INFO L290 TraceCheckUtils]: 52: Hoare triple {179159#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {179159#false} is VALID [2022-04-27 22:35:30,577 INFO L290 TraceCheckUtils]: 53: Hoare triple {179159#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {179159#false} is VALID [2022-04-27 22:35:30,577 INFO L290 TraceCheckUtils]: 54: Hoare triple {179159#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179159#false} is VALID [2022-04-27 22:35:30,577 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 0 proven. 38 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-27 22:35:30,577 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:35:30,577 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [792740361] [2022-04-27 22:35:30,578 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [792740361] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:35:30,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [849178475] [2022-04-27 22:35:30,578 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:35:30,578 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:35:30,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:35:30,579 INFO L229 MonitoredProcess]: Starting monitored process 77 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:35:30,579 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (77)] Waiting until timeout for monitored process [2022-04-27 22:35:30,695 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:35:30,695 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:35:30,696 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-27 22:35:30,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:30,709 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:35:31,357 INFO L272 TraceCheckUtils]: 0: Hoare triple {179158#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L290 TraceCheckUtils]: 1: Hoare triple {179158#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L290 TraceCheckUtils]: 2: Hoare triple {179158#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {179158#true} {179158#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L272 TraceCheckUtils]: 4: Hoare triple {179158#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L290 TraceCheckUtils]: 5: Hoare triple {179158#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L290 TraceCheckUtils]: 6: Hoare triple {179158#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L272 TraceCheckUtils]: 7: Hoare triple {179158#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:31,358 INFO L290 TraceCheckUtils]: 8: Hoare triple {179158#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {179249#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:31,359 INFO L290 TraceCheckUtils]: 9: Hoare triple {179249#(and (<= correct_version_~n |correct_version_#in~n|) (<= 0 correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179253#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:31,359 INFO L290 TraceCheckUtils]: 10: Hoare triple {179253#(and (<= correct_version_~n |correct_version_#in~n|) (<= correct_version_~a correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179257#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:31,360 INFO L290 TraceCheckUtils]: 11: Hoare triple {179257#(and (<= (* 2 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179261#(and (<= correct_version_~n |correct_version_#in~n|) (<= (* 3 correct_version_~a) correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:31,360 INFO L290 TraceCheckUtils]: 12: Hoare triple {179261#(and (<= correct_version_~n |correct_version_#in~n|) (<= (* 3 correct_version_~a) correct_version_~b~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179265#(and (<= (* 4 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:31,361 INFO L290 TraceCheckUtils]: 13: Hoare triple {179265#(and (<= (* 4 correct_version_~a) correct_version_~b~0) (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179269#(and (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| (div correct_version_~b~0 5)))} is VALID [2022-04-27 22:35:31,361 INFO L290 TraceCheckUtils]: 14: Hoare triple {179269#(and (<= correct_version_~n |correct_version_#in~n|) (<= |correct_version_#in~a| (div correct_version_~b~0 5)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,361 INFO L290 TraceCheckUtils]: 15: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,362 INFO L290 TraceCheckUtils]: 16: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,362 INFO L290 TraceCheckUtils]: 17: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,362 INFO L290 TraceCheckUtils]: 18: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,362 INFO L290 TraceCheckUtils]: 19: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,363 INFO L290 TraceCheckUtils]: 20: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,363 INFO L290 TraceCheckUtils]: 21: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,363 INFO L290 TraceCheckUtils]: 22: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,363 INFO L290 TraceCheckUtils]: 23: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,363 INFO L290 TraceCheckUtils]: 24: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,364 INFO L290 TraceCheckUtils]: 25: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,364 INFO L290 TraceCheckUtils]: 26: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,364 INFO L290 TraceCheckUtils]: 27: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:31,364 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {179158#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} is VALID [2022-04-27 22:35:31,365 INFO L290 TraceCheckUtils]: 29: Hoare triple {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} is VALID [2022-04-27 22:35:31,365 INFO L272 TraceCheckUtils]: 30: Hoare triple {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:31,365 INFO L290 TraceCheckUtils]: 31: Hoare triple {179158#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {179324#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,365 INFO L290 TraceCheckUtils]: 32: Hoare triple {179324#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 0) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179328#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} is VALID [2022-04-27 22:35:31,366 INFO L290 TraceCheckUtils]: 33: Hoare triple {179328#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179332#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:35:31,366 INFO L290 TraceCheckUtils]: 34: Hoare triple {179332#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* 2 student_version_~a)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179336#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,367 INFO L290 TraceCheckUtils]: 35: Hoare triple {179336#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~b~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179340#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:35:31,367 INFO L290 TraceCheckUtils]: 36: Hoare triple {179340#(and (<= |student_version_#in~n| student_version_~n) (<= student_version_~a |student_version_#in~a|) (<= student_version_~b~1 (* student_version_~a 4)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179344#(and (<= |student_version_#in~n| student_version_~n) (<= (div (- student_version_~b~1) (- 5)) |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,368 INFO L290 TraceCheckUtils]: 37: Hoare triple {179344#(and (<= |student_version_#in~n| student_version_~n) (<= (div (- student_version_~b~1) (- 5)) |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,368 INFO L290 TraceCheckUtils]: 38: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,368 INFO L290 TraceCheckUtils]: 39: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,368 INFO L290 TraceCheckUtils]: 40: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,368 INFO L290 TraceCheckUtils]: 41: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,369 INFO L290 TraceCheckUtils]: 42: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,369 INFO L290 TraceCheckUtils]: 43: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,369 INFO L290 TraceCheckUtils]: 44: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,369 INFO L290 TraceCheckUtils]: 45: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,369 INFO L290 TraceCheckUtils]: 46: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,370 INFO L290 TraceCheckUtils]: 47: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,370 INFO L290 TraceCheckUtils]: 48: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:31,370 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {179159#false} is VALID [2022-04-27 22:35:31,370 INFO L290 TraceCheckUtils]: 50: Hoare triple {179159#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {179159#false} is VALID [2022-04-27 22:35:31,370 INFO L272 TraceCheckUtils]: 51: Hoare triple {179159#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {179159#false} is VALID [2022-04-27 22:35:31,370 INFO L290 TraceCheckUtils]: 52: Hoare triple {179159#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {179159#false} is VALID [2022-04-27 22:35:31,371 INFO L290 TraceCheckUtils]: 53: Hoare triple {179159#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {179159#false} is VALID [2022-04-27 22:35:31,371 INFO L290 TraceCheckUtils]: 54: Hoare triple {179159#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179159#false} is VALID [2022-04-27 22:35:31,371 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-27 22:35:31,371 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:35:32,406 INFO L290 TraceCheckUtils]: 54: Hoare triple {179159#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179159#false} is VALID [2022-04-27 22:35:32,407 INFO L290 TraceCheckUtils]: 53: Hoare triple {179159#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {179159#false} is VALID [2022-04-27 22:35:32,407 INFO L290 TraceCheckUtils]: 52: Hoare triple {179159#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {179159#false} is VALID [2022-04-27 22:35:32,407 INFO L272 TraceCheckUtils]: 51: Hoare triple {179159#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {179159#false} is VALID [2022-04-27 22:35:32,407 INFO L290 TraceCheckUtils]: 50: Hoare triple {179159#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {179159#false} is VALID [2022-04-27 22:35:32,407 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {179159#false} is VALID [2022-04-27 22:35:32,408 INFO L290 TraceCheckUtils]: 48: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,408 INFO L290 TraceCheckUtils]: 47: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,408 INFO L290 TraceCheckUtils]: 46: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,408 INFO L290 TraceCheckUtils]: 45: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,408 INFO L290 TraceCheckUtils]: 44: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,408 INFO L290 TraceCheckUtils]: 43: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,409 INFO L290 TraceCheckUtils]: 42: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,409 INFO L290 TraceCheckUtils]: 41: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,409 INFO L290 TraceCheckUtils]: 40: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,409 INFO L290 TraceCheckUtils]: 39: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,409 INFO L290 TraceCheckUtils]: 38: Hoare triple {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,410 INFO L290 TraceCheckUtils]: 37: Hoare triple {179453#(or (< student_version_~b~1 student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {179221#(<= |student_version_#in~n| (* 5 |student_version_#in~a|))} is VALID [2022-04-27 22:35:32,410 INFO L290 TraceCheckUtils]: 36: Hoare triple {179457#(or (< (+ student_version_~b~1 student_version_~a) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179453#(or (< student_version_~b~1 student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} is VALID [2022-04-27 22:35:32,410 INFO L290 TraceCheckUtils]: 35: Hoare triple {179461#(or (<= |student_version_#in~n| (* 5 |student_version_#in~a|)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179457#(or (< (+ student_version_~b~1 student_version_~a) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} is VALID [2022-04-27 22:35:32,411 INFO L290 TraceCheckUtils]: 34: Hoare triple {179465#(or (< (+ (* 3 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179461#(or (<= |student_version_#in~n| (* 5 |student_version_#in~a|)) (< (+ student_version_~b~1 (* 2 student_version_~a)) student_version_~n))} is VALID [2022-04-27 22:35:32,411 INFO L290 TraceCheckUtils]: 33: Hoare triple {179469#(or (< (+ student_version_~b~1 (* student_version_~a 4)) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179465#(or (< (+ (* 3 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} is VALID [2022-04-27 22:35:32,412 INFO L290 TraceCheckUtils]: 32: Hoare triple {179473#(or (< (+ (* 5 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {179469#(or (< (+ student_version_~b~1 (* student_version_~a 4)) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} is VALID [2022-04-27 22:35:32,412 INFO L290 TraceCheckUtils]: 31: Hoare triple {179158#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {179473#(or (< (+ (* 5 student_version_~a) student_version_~b~1) student_version_~n) (<= |student_version_#in~n| (* 5 |student_version_#in~a|)))} is VALID [2022-04-27 22:35:32,412 INFO L272 TraceCheckUtils]: 30: Hoare triple {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:32,412 INFO L290 TraceCheckUtils]: 29: Hoare triple {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} is VALID [2022-04-27 22:35:32,413 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} {179158#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {179184#(<= (+ (* 5 main_~a~0) 1) main_~n~0)} is VALID [2022-04-27 22:35:32,413 INFO L290 TraceCheckUtils]: 27: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,413 INFO L290 TraceCheckUtils]: 26: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,413 INFO L290 TraceCheckUtils]: 25: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,414 INFO L290 TraceCheckUtils]: 24: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,414 INFO L290 TraceCheckUtils]: 23: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,414 INFO L290 TraceCheckUtils]: 22: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,414 INFO L290 TraceCheckUtils]: 21: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,414 INFO L290 TraceCheckUtils]: 19: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,415 INFO L290 TraceCheckUtils]: 18: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,415 INFO L290 TraceCheckUtils]: 17: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,415 INFO L290 TraceCheckUtils]: 16: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,415 INFO L290 TraceCheckUtils]: 14: Hoare triple {179528#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (not (< correct_version_~b~0 correct_version_~n)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179213#(<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|)} is VALID [2022-04-27 22:35:32,416 INFO L290 TraceCheckUtils]: 13: Hoare triple {179532#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179528#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (not (< correct_version_~b~0 correct_version_~n)))} is VALID [2022-04-27 22:35:32,416 INFO L290 TraceCheckUtils]: 12: Hoare triple {179536#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179532#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 correct_version_~a)))} is VALID [2022-04-27 22:35:32,417 INFO L290 TraceCheckUtils]: 11: Hoare triple {179540#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 3 correct_version_~a))))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179536#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ (* 2 correct_version_~a) correct_version_~b~0)))} is VALID [2022-04-27 22:35:32,417 INFO L290 TraceCheckUtils]: 10: Hoare triple {179544#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 4 correct_version_~a))))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179540#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 3 correct_version_~a))))} is VALID [2022-04-27 22:35:32,418 INFO L290 TraceCheckUtils]: 9: Hoare triple {179548#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 5 correct_version_~a))))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {179544#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 4 correct_version_~a))))} is VALID [2022-04-27 22:35:32,418 INFO L290 TraceCheckUtils]: 8: Hoare triple {179158#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {179548#(or (<= (+ (* 5 |correct_version_#in~a|) 1) |correct_version_#in~n|) (<= correct_version_~n (+ correct_version_~b~0 (* 5 correct_version_~a))))} is VALID [2022-04-27 22:35:32,418 INFO L272 TraceCheckUtils]: 7: Hoare triple {179158#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:32,418 INFO L290 TraceCheckUtils]: 6: Hoare triple {179158#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:32,418 INFO L290 TraceCheckUtils]: 5: Hoare triple {179158#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {179158#true} is VALID [2022-04-27 22:35:32,418 INFO L272 TraceCheckUtils]: 4: Hoare triple {179158#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:32,418 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {179158#true} {179158#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:32,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {179158#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:32,419 INFO L290 TraceCheckUtils]: 1: Hoare triple {179158#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {179158#true} is VALID [2022-04-27 22:35:32,419 INFO L272 TraceCheckUtils]: 0: Hoare triple {179158#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179158#true} is VALID [2022-04-27 22:35:32,419 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-27 22:35:32,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [849178475] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:35:32,419 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:35:32,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 17, 17] total 45 [2022-04-27 22:35:32,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [608826800] [2022-04-27 22:35:32,419 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:35:32,420 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 55 [2022-04-27 22:35:32,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:35:32,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:32,453 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:35:32,453 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 45 states [2022-04-27 22:35:32,453 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:35:32,453 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 45 interpolants. [2022-04-27 22:35:32,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=157, Invalid=1823, Unknown=0, NotChecked=0, Total=1980 [2022-04-27 22:35:32,454 INFO L87 Difference]: Start difference. First operand 846 states and 958 transitions. Second operand has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:44,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:44,748 INFO L93 Difference]: Finished difference Result 860 states and 971 transitions. [2022-04-27 22:35:44,748 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-27 22:35:44,748 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 55 [2022-04-27 22:35:44,748 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:35:44,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:44,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 149 transitions. [2022-04-27 22:35:44,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:44,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 149 transitions. [2022-04-27 22:35:44,751 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 149 transitions. [2022-04-27 22:35:44,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:35:44,948 INFO L225 Difference]: With dead ends: 860 [2022-04-27 22:35:44,949 INFO L226 Difference]: Without dead ends: 834 [2022-04-27 22:35:44,953 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 84 SyntacticMatches, 6 SemanticMatches, 67 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 639 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=404, Invalid=4288, Unknown=0, NotChecked=0, Total=4692 [2022-04-27 22:35:44,953 INFO L413 NwaCegarLoop]: 81 mSDtfsCounter, 525 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 2862 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 536 SdHoareTripleChecker+Valid, 213 SdHoareTripleChecker+Invalid, 2911 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 2862 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.0s IncrementalHoareTripleChecker+Time [2022-04-27 22:35:44,953 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [536 Valid, 213 Invalid, 2911 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 2862 Invalid, 0 Unknown, 0 Unchecked, 2.0s Time] [2022-04-27 22:35:44,954 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 834 states. [2022-04-27 22:35:52,626 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 834 to 832. [2022-04-27 22:35:52,626 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:35:52,627 INFO L82 GeneralOperation]: Start isEquivalent. First operand 834 states. Second operand has 832 states, 724 states have (on average 1.138121546961326) internal successors, (824), 790 states have internal predecessors, (824), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (72), 36 states have call predecessors, (72), 36 states have call successors, (72) [2022-04-27 22:35:52,628 INFO L74 IsIncluded]: Start isIncluded. First operand 834 states. Second operand has 832 states, 724 states have (on average 1.138121546961326) internal successors, (824), 790 states have internal predecessors, (824), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (72), 36 states have call predecessors, (72), 36 states have call successors, (72) [2022-04-27 22:35:52,628 INFO L87 Difference]: Start difference. First operand 834 states. Second operand has 832 states, 724 states have (on average 1.138121546961326) internal successors, (824), 790 states have internal predecessors, (824), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (72), 36 states have call predecessors, (72), 36 states have call successors, (72) [2022-04-27 22:35:52,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:52,656 INFO L93 Difference]: Finished difference Result 834 states and 936 transitions. [2022-04-27 22:35:52,656 INFO L276 IsEmpty]: Start isEmpty. Operand 834 states and 936 transitions. [2022-04-27 22:35:52,660 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:35:52,660 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:35:52,661 INFO L74 IsIncluded]: Start isIncluded. First operand has 832 states, 724 states have (on average 1.138121546961326) internal successors, (824), 790 states have internal predecessors, (824), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (72), 36 states have call predecessors, (72), 36 states have call successors, (72) Second operand 834 states. [2022-04-27 22:35:52,661 INFO L87 Difference]: Start difference. First operand has 832 states, 724 states have (on average 1.138121546961326) internal successors, (824), 790 states have internal predecessors, (824), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (72), 36 states have call predecessors, (72), 36 states have call successors, (72) Second operand 834 states. [2022-04-27 22:35:52,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:35:52,687 INFO L93 Difference]: Finished difference Result 834 states and 936 transitions. [2022-04-27 22:35:52,687 INFO L276 IsEmpty]: Start isEmpty. Operand 834 states and 936 transitions. [2022-04-27 22:35:52,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:35:52,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:35:52,692 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:35:52,692 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:35:52,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 832 states, 724 states have (on average 1.138121546961326) internal successors, (824), 790 states have internal predecessors, (824), 38 states have call successors, (38), 5 states have call predecessors, (38), 69 states have return successors, (72), 36 states have call predecessors, (72), 36 states have call successors, (72) [2022-04-27 22:35:52,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 832 states to 832 states and 934 transitions. [2022-04-27 22:35:52,726 INFO L78 Accepts]: Start accepts. Automaton has 832 states and 934 transitions. Word has length 55 [2022-04-27 22:35:52,726 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:35:52,726 INFO L495 AbstractCegarLoop]: Abstraction has 832 states and 934 transitions. [2022-04-27 22:35:52,726 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 45 states, 45 states have (on average 1.5555555555555556) internal successors, (70), 44 states have internal predecessors, (70), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:52,727 INFO L276 IsEmpty]: Start isEmpty. Operand 832 states and 934 transitions. [2022-04-27 22:35:52,732 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 22:35:52,732 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:35:52,732 INFO L195 NwaCegarLoop]: trace histogram [11, 10, 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-27 22:35:52,748 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (77)] Forceful destruction successful, exit code 0 [2022-04-27 22:35:52,947 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable85,77 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:35:52,947 INFO L420 AbstractCegarLoop]: === Iteration 87 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:35:52,948 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:35:52,948 INFO L85 PathProgramCache]: Analyzing trace with hash 938521523, now seen corresponding path program 77 times [2022-04-27 22:35:52,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:35:52,948 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [281117260] [2022-04-27 22:35:52,948 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:35:52,948 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:35:52,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:52,991 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:35:52,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:52,993 INFO L290 TraceCheckUtils]: 0: Hoare triple {183823#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {183776#true} is VALID [2022-04-27 22:35:52,993 INFO L290 TraceCheckUtils]: 1: Hoare triple {183776#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:52,993 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {183776#true} {183776#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:52,993 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:35:52,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:53,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {183776#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:35:53,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:35:53,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:35:53,138 INFO L290 TraceCheckUtils]: 3: Hoare triple {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183825#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:35:53,138 INFO L290 TraceCheckUtils]: 4: Hoare triple {183825#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183826#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,139 INFO L290 TraceCheckUtils]: 5: Hoare triple {183826#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183827#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,139 INFO L290 TraceCheckUtils]: 6: Hoare triple {183827#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183828#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:35:53,140 INFO L290 TraceCheckUtils]: 7: Hoare triple {183828#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183829#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,140 INFO L290 TraceCheckUtils]: 8: Hoare triple {183829#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183830#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,140 INFO L290 TraceCheckUtils]: 9: Hoare triple {183830#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183831#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} is VALID [2022-04-27 22:35:53,141 INFO L290 TraceCheckUtils]: 10: Hoare triple {183831#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183832#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,141 INFO L290 TraceCheckUtils]: 11: Hoare triple {183832#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183833#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,142 INFO L290 TraceCheckUtils]: 12: Hoare triple {183833#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183834#(and (<= correct_version_~l~0 (* |correct_version_#in~a| 10)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:35:53,142 INFO L290 TraceCheckUtils]: 13: Hoare triple {183834#(and (<= correct_version_~l~0 (* |correct_version_#in~a| 10)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,142 INFO L290 TraceCheckUtils]: 14: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,143 INFO L290 TraceCheckUtils]: 15: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,143 INFO L290 TraceCheckUtils]: 16: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,143 INFO L290 TraceCheckUtils]: 17: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,143 INFO L290 TraceCheckUtils]: 18: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,144 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} {183776#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {183801#(<= main_~m~0 (* main_~a~0 10))} is VALID [2022-04-27 22:35:53,144 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:35:53,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:53,365 INFO L290 TraceCheckUtils]: 0: Hoare triple {183776#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,367 INFO L290 TraceCheckUtils]: 3: Hoare triple {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183837#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:35:53,367 INFO L290 TraceCheckUtils]: 4: Hoare triple {183837#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183838#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,367 INFO L290 TraceCheckUtils]: 5: Hoare triple {183838#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183839#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,368 INFO L290 TraceCheckUtils]: 6: Hoare triple {183839#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183840#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:35:53,368 INFO L290 TraceCheckUtils]: 7: Hoare triple {183840#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183841#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:35:53,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {183841#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183842#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {183842#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183843#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:35:53,369 INFO L290 TraceCheckUtils]: 10: Hoare triple {183843#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183844#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:35:53,370 INFO L290 TraceCheckUtils]: 11: Hoare triple {183844#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183845#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,370 INFO L290 TraceCheckUtils]: 12: Hoare triple {183845#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183846#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 10) student_version_~l~1))} is VALID [2022-04-27 22:35:53,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {183846#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 10) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183847#(and (<= (+ (* |student_version_#in~a| 10) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {183847#(and (<= (+ (* |student_version_#in~a| 10) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,371 INFO L290 TraceCheckUtils]: 16: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,372 INFO L290 TraceCheckUtils]: 18: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,372 INFO L290 TraceCheckUtils]: 19: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,373 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} {183801#(<= main_~m~0 (* main_~a~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {183777#false} is VALID [2022-04-27 22:35:53,373 INFO L272 TraceCheckUtils]: 0: Hoare triple {183776#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183823#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:35:53,373 INFO L290 TraceCheckUtils]: 1: Hoare triple {183823#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {183776#true} is VALID [2022-04-27 22:35:53,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {183776#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:53,373 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183776#true} {183776#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:53,373 INFO L272 TraceCheckUtils]: 4: Hoare triple {183776#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:53,373 INFO L290 TraceCheckUtils]: 5: Hoare triple {183776#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:53,373 INFO L290 TraceCheckUtils]: 6: Hoare triple {183776#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:53,373 INFO L272 TraceCheckUtils]: 7: Hoare triple {183776#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:53,374 INFO L290 TraceCheckUtils]: 8: Hoare triple {183776#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:35:53,374 INFO L290 TraceCheckUtils]: 9: Hoare triple {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:35:53,374 INFO L290 TraceCheckUtils]: 10: Hoare triple {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} is VALID [2022-04-27 22:35:53,375 INFO L290 TraceCheckUtils]: 11: Hoare triple {183824#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183825#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} is VALID [2022-04-27 22:35:53,375 INFO L290 TraceCheckUtils]: 12: Hoare triple {183825#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183826#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,375 INFO L290 TraceCheckUtils]: 13: Hoare triple {183826#(and (<= correct_version_~l~0 (* 2 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183827#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,376 INFO L290 TraceCheckUtils]: 14: Hoare triple {183827#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183828#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} is VALID [2022-04-27 22:35:53,376 INFO L290 TraceCheckUtils]: 15: Hoare triple {183828#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 4 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183829#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,377 INFO L290 TraceCheckUtils]: 16: Hoare triple {183829#(and (<= correct_version_~l~0 (* 5 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183830#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,377 INFO L290 TraceCheckUtils]: 17: Hoare triple {183830#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183831#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} is VALID [2022-04-27 22:35:53,377 INFO L290 TraceCheckUtils]: 18: Hoare triple {183831#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= correct_version_~l~0 (* 7 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183832#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,378 INFO L290 TraceCheckUtils]: 19: Hoare triple {183832#(and (<= correct_version_~l~0 (* 8 correct_version_~a)) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183833#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:35:53,378 INFO L290 TraceCheckUtils]: 20: Hoare triple {183833#(and (= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 correct_version_~a)) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183834#(and (<= correct_version_~l~0 (* |correct_version_#in~a| 10)) (= |correct_version_#in~m| correct_version_~m))} is VALID [2022-04-27 22:35:53,379 INFO L290 TraceCheckUtils]: 21: Hoare triple {183834#(and (<= correct_version_~l~0 (* |correct_version_#in~a| 10)) (= |correct_version_#in~m| correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,379 INFO L290 TraceCheckUtils]: 22: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,379 INFO L290 TraceCheckUtils]: 23: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,379 INFO L290 TraceCheckUtils]: 24: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,380 INFO L290 TraceCheckUtils]: 26: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:53,380 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} {183776#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {183801#(<= main_~m~0 (* main_~a~0 10))} is VALID [2022-04-27 22:35:53,381 INFO L290 TraceCheckUtils]: 28: Hoare triple {183801#(<= main_~m~0 (* main_~a~0 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {183801#(<= main_~m~0 (* main_~a~0 10))} is VALID [2022-04-27 22:35:53,381 INFO L272 TraceCheckUtils]: 29: Hoare triple {183801#(<= main_~m~0 (* main_~a~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:53,381 INFO L290 TraceCheckUtils]: 30: Hoare triple {183776#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,382 INFO L290 TraceCheckUtils]: 31: Hoare triple {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,382 INFO L290 TraceCheckUtils]: 32: Hoare triple {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,382 INFO L290 TraceCheckUtils]: 33: Hoare triple {183836#(and (= |student_version_#in~a| student_version_~a) (<= 0 student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183837#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:35:53,383 INFO L290 TraceCheckUtils]: 34: Hoare triple {183837#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183838#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,383 INFO L290 TraceCheckUtils]: 35: Hoare triple {183838#(and (= |student_version_#in~a| student_version_~a) (<= (* 2 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183839#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,384 INFO L290 TraceCheckUtils]: 36: Hoare triple {183839#(and (= |student_version_#in~a| student_version_~a) (<= (* 3 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183840#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:35:53,384 INFO L290 TraceCheckUtils]: 37: Hoare triple {183840#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183841#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:35:53,384 INFO L290 TraceCheckUtils]: 38: Hoare triple {183841#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183842#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,385 INFO L290 TraceCheckUtils]: 39: Hoare triple {183842#(and (= |student_version_#in~a| student_version_~a) (<= (* 6 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183843#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:35:53,385 INFO L290 TraceCheckUtils]: 40: Hoare triple {183843#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 7 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183844#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:35:53,386 INFO L290 TraceCheckUtils]: 41: Hoare triple {183844#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* 8 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183845#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,386 INFO L290 TraceCheckUtils]: 42: Hoare triple {183845#(and (= |student_version_#in~a| student_version_~a) (<= (* 9 student_version_~a) student_version_~l~1) (= |student_version_#in~m| student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183846#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 10) student_version_~l~1))} is VALID [2022-04-27 22:35:53,386 INFO L290 TraceCheckUtils]: 43: Hoare triple {183846#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= (* student_version_~a 10) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183847#(and (<= (+ (* |student_version_#in~a| 10) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} is VALID [2022-04-27 22:35:53,387 INFO L290 TraceCheckUtils]: 44: Hoare triple {183847#(and (<= (+ (* |student_version_#in~a| 10) 1) student_version_~m) (= |student_version_#in~m| student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,387 INFO L290 TraceCheckUtils]: 45: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,387 INFO L290 TraceCheckUtils]: 46: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,387 INFO L290 TraceCheckUtils]: 47: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,387 INFO L290 TraceCheckUtils]: 48: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,388 INFO L290 TraceCheckUtils]: 49: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:53,388 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} {183801#(<= main_~m~0 (* main_~a~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {183777#false} is VALID [2022-04-27 22:35:53,388 INFO L290 TraceCheckUtils]: 51: Hoare triple {183777#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {183777#false} is VALID [2022-04-27 22:35:53,388 INFO L272 TraceCheckUtils]: 52: Hoare triple {183777#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {183777#false} is VALID [2022-04-27 22:35:53,388 INFO L290 TraceCheckUtils]: 53: Hoare triple {183777#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {183777#false} is VALID [2022-04-27 22:35:53,388 INFO L290 TraceCheckUtils]: 54: Hoare triple {183777#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {183777#false} is VALID [2022-04-27 22:35:53,388 INFO L290 TraceCheckUtils]: 55: Hoare triple {183777#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183777#false} is VALID [2022-04-27 22:35:53,389 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 0 proven. 121 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:35:53,389 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:35:53,389 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [281117260] [2022-04-27 22:35:53,389 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [281117260] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:35:53,389 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1722781391] [2022-04-27 22:35:53,389 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 22:35:53,389 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:35:53,389 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:35:53,390 INFO L229 MonitoredProcess]: Starting monitored process 78 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:35:53,391 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (78)] Waiting until timeout for monitored process [2022-04-27 22:35:53,490 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 7 check-sat command(s) [2022-04-27 22:35:53,491 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:35:53,492 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-27 22:35:53,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:35:53,514 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:35:54,801 INFO L272 TraceCheckUtils]: 0: Hoare triple {183776#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:54,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {183776#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {183776#true} is VALID [2022-04-27 22:35:54,801 INFO L290 TraceCheckUtils]: 2: Hoare triple {183776#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:54,801 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183776#true} {183776#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:54,801 INFO L272 TraceCheckUtils]: 4: Hoare triple {183776#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:54,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {183776#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:54,802 INFO L290 TraceCheckUtils]: 6: Hoare triple {183776#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:54,802 INFO L272 TraceCheckUtils]: 7: Hoare triple {183776#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:54,802 INFO L290 TraceCheckUtils]: 8: Hoare triple {183776#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {183876#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,802 INFO L290 TraceCheckUtils]: 9: Hoare triple {183876#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {183876#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,803 INFO L290 TraceCheckUtils]: 10: Hoare triple {183876#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {183876#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,803 INFO L290 TraceCheckUtils]: 11: Hoare triple {183876#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 0) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183886#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,804 INFO L290 TraceCheckUtils]: 12: Hoare triple {183886#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 correct_version_~a) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183890#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,804 INFO L290 TraceCheckUtils]: 13: Hoare triple {183890#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 2 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183894#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,805 INFO L290 TraceCheckUtils]: 14: Hoare triple {183894#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 3 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183898#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,805 INFO L290 TraceCheckUtils]: 15: Hoare triple {183898#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 4 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183902#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,805 INFO L290 TraceCheckUtils]: 16: Hoare triple {183902#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 5 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183906#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,806 INFO L290 TraceCheckUtils]: 17: Hoare triple {183906#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 6 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183910#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 7 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,806 INFO L290 TraceCheckUtils]: 18: Hoare triple {183910#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 7 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183914#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 8 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {183914#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 8 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183918#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {183918#(and (<= |correct_version_#in~m| correct_version_~m) (<= correct_version_~l~0 (* 9 correct_version_~a)) (<= correct_version_~a |correct_version_#in~a|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {183922#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 10)) |correct_version_#in~a|))} is VALID [2022-04-27 22:35:54,808 INFO L290 TraceCheckUtils]: 21: Hoare triple {183922#(and (<= |correct_version_#in~m| correct_version_~m) (<= (div (- correct_version_~l~0) (- 10)) |correct_version_#in~a|))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:54,808 INFO L290 TraceCheckUtils]: 22: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:54,808 INFO L290 TraceCheckUtils]: 23: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:54,808 INFO L290 TraceCheckUtils]: 24: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:54,808 INFO L290 TraceCheckUtils]: 25: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:54,809 INFO L290 TraceCheckUtils]: 26: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:54,809 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} {183776#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {183801#(<= main_~m~0 (* main_~a~0 10))} is VALID [2022-04-27 22:35:54,809 INFO L290 TraceCheckUtils]: 28: Hoare triple {183801#(<= main_~m~0 (* main_~a~0 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {183801#(<= main_~m~0 (* main_~a~0 10))} is VALID [2022-04-27 22:35:54,809 INFO L272 TraceCheckUtils]: 29: Hoare triple {183801#(<= main_~m~0 (* main_~a~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:54,810 INFO L290 TraceCheckUtils]: 30: Hoare triple {183776#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {183953#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,810 INFO L290 TraceCheckUtils]: 31: Hoare triple {183953#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {183953#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,810 INFO L290 TraceCheckUtils]: 32: Hoare triple {183953#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {183953#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,811 INFO L290 TraceCheckUtils]: 33: Hoare triple {183953#(and (<= student_version_~m |student_version_#in~m|) (<= 0 student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183963#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} is VALID [2022-04-27 22:35:54,811 INFO L290 TraceCheckUtils]: 34: Hoare triple {183963#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= student_version_~a student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183967#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,812 INFO L290 TraceCheckUtils]: 35: Hoare triple {183967#(and (<= student_version_~m |student_version_#in~m|) (<= (* 2 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183971#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,812 INFO L290 TraceCheckUtils]: 36: Hoare triple {183971#(and (<= student_version_~m |student_version_#in~m|) (<= (* 3 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183975#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} is VALID [2022-04-27 22:35:54,813 INFO L290 TraceCheckUtils]: 37: Hoare triple {183975#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* student_version_~a 4) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183979#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} is VALID [2022-04-27 22:35:54,813 INFO L290 TraceCheckUtils]: 38: Hoare triple {183979#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| student_version_~a) (<= (* 5 student_version_~a) student_version_~l~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183983#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,813 INFO L290 TraceCheckUtils]: 39: Hoare triple {183983#(and (<= student_version_~m |student_version_#in~m|) (<= (* 6 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183987#(and (<= student_version_~m |student_version_#in~m|) (<= (* 7 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,814 INFO L290 TraceCheckUtils]: 40: Hoare triple {183987#(and (<= student_version_~m |student_version_#in~m|) (<= (* 7 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183991#(and (<= student_version_~m |student_version_#in~m|) (<= (* 8 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,814 INFO L290 TraceCheckUtils]: 41: Hoare triple {183991#(and (<= student_version_~m |student_version_#in~m|) (<= (* 8 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183995#(and (<= student_version_~m |student_version_#in~m|) (<= (* 9 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} is VALID [2022-04-27 22:35:54,815 INFO L290 TraceCheckUtils]: 42: Hoare triple {183995#(and (<= student_version_~m |student_version_#in~m|) (<= (* 9 student_version_~a) student_version_~l~1) (<= |student_version_#in~a| student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183999#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 10)))} is VALID [2022-04-27 22:35:54,815 INFO L290 TraceCheckUtils]: 43: Hoare triple {183999#(and (<= student_version_~m |student_version_#in~m|) (<= |student_version_#in~a| (div student_version_~l~1 10)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:54,815 INFO L290 TraceCheckUtils]: 44: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:54,816 INFO L290 TraceCheckUtils]: 45: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:54,816 INFO L290 TraceCheckUtils]: 46: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:54,816 INFO L290 TraceCheckUtils]: 47: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:54,816 INFO L290 TraceCheckUtils]: 48: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:54,816 INFO L290 TraceCheckUtils]: 49: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:54,817 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} {183801#(<= main_~m~0 (* main_~a~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {183777#false} is VALID [2022-04-27 22:35:54,817 INFO L290 TraceCheckUtils]: 51: Hoare triple {183777#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {183777#false} is VALID [2022-04-27 22:35:54,817 INFO L272 TraceCheckUtils]: 52: Hoare triple {183777#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {183777#false} is VALID [2022-04-27 22:35:54,817 INFO L290 TraceCheckUtils]: 53: Hoare triple {183777#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {183777#false} is VALID [2022-04-27 22:35:54,817 INFO L290 TraceCheckUtils]: 54: Hoare triple {183777#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {183777#false} is VALID [2022-04-27 22:35:54,817 INFO L290 TraceCheckUtils]: 55: Hoare triple {183777#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183777#false} is VALID [2022-04-27 22:35:54,818 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 0 proven. 121 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:35:54,818 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:35:56,995 INFO L290 TraceCheckUtils]: 55: Hoare triple {183777#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183777#false} is VALID [2022-04-27 22:35:56,995 INFO L290 TraceCheckUtils]: 54: Hoare triple {183777#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {183777#false} is VALID [2022-04-27 22:35:56,995 INFO L290 TraceCheckUtils]: 53: Hoare triple {183777#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {183777#false} is VALID [2022-04-27 22:35:56,995 INFO L272 TraceCheckUtils]: 52: Hoare triple {183777#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {183777#false} is VALID [2022-04-27 22:35:56,995 INFO L290 TraceCheckUtils]: 51: Hoare triple {183777#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {183777#false} is VALID [2022-04-27 22:35:56,996 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} {183801#(<= main_~m~0 (* main_~a~0 10))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {183777#false} is VALID [2022-04-27 22:35:56,996 INFO L290 TraceCheckUtils]: 49: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:56,996 INFO L290 TraceCheckUtils]: 48: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:56,996 INFO L290 TraceCheckUtils]: 47: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:56,996 INFO L290 TraceCheckUtils]: 46: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:56,997 INFO L290 TraceCheckUtils]: 45: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:56,997 INFO L290 TraceCheckUtils]: 44: Hoare triple {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:56,997 INFO L290 TraceCheckUtils]: 43: Hoare triple {184078#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {183848#(<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|)} is VALID [2022-04-27 22:35:56,997 INFO L290 TraceCheckUtils]: 42: Hoare triple {184082#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184078#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (not (< student_version_~l~1 student_version_~m)))} is VALID [2022-04-27 22:35:56,998 INFO L290 TraceCheckUtils]: 41: Hoare triple {184086#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184082#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 student_version_~a)))} is VALID [2022-04-27 22:35:56,998 INFO L290 TraceCheckUtils]: 40: Hoare triple {184090#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184086#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 2 student_version_~a))))} is VALID [2022-04-27 22:35:56,999 INFO L290 TraceCheckUtils]: 39: Hoare triple {184094#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184090#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 3 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:35:56,999 INFO L290 TraceCheckUtils]: 38: Hoare triple {184098#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184094#(or (<= student_version_~m (+ student_version_~l~1 (* student_version_~a 4))) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:35:57,000 INFO L290 TraceCheckUtils]: 37: Hoare triple {184102#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184098#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 5 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:35:57,000 INFO L290 TraceCheckUtils]: 36: Hoare triple {184106#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184102#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 6 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:35:57,001 INFO L290 TraceCheckUtils]: 35: Hoare triple {184110#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184106#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 7 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:35:57,001 INFO L290 TraceCheckUtils]: 34: Hoare triple {184114#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184110#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ (* 8 student_version_~a) student_version_~l~1)))} is VALID [2022-04-27 22:35:57,001 INFO L290 TraceCheckUtils]: 33: Hoare triple {184118#(or (<= student_version_~m (+ (* student_version_~a 10) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {184114#(or (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|) (<= student_version_~m (+ student_version_~l~1 (* 9 student_version_~a))))} is VALID [2022-04-27 22:35:57,002 INFO L290 TraceCheckUtils]: 32: Hoare triple {184118#(or (<= student_version_~m (+ (* student_version_~a 10) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {184118#(or (<= student_version_~m (+ (* student_version_~a 10) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:35:57,002 INFO L290 TraceCheckUtils]: 31: Hoare triple {184118#(or (<= student_version_~m (+ (* student_version_~a 10) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {184118#(or (<= student_version_~m (+ (* student_version_~a 10) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:35:57,002 INFO L290 TraceCheckUtils]: 30: Hoare triple {183776#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {184118#(or (<= student_version_~m (+ (* student_version_~a 10) student_version_~l~1)) (<= (+ (* |student_version_#in~a| 10) 1) |student_version_#in~m|))} is VALID [2022-04-27 22:35:57,002 INFO L272 TraceCheckUtils]: 29: Hoare triple {183801#(<= main_~m~0 (* main_~a~0 10))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:57,003 INFO L290 TraceCheckUtils]: 28: Hoare triple {183801#(<= main_~m~0 (* main_~a~0 10))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {183801#(<= main_~m~0 (* main_~a~0 10))} is VALID [2022-04-27 22:35:57,003 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} {183776#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {183801#(<= main_~m~0 (* main_~a~0 10))} is VALID [2022-04-27 22:35:57,003 INFO L290 TraceCheckUtils]: 26: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:57,004 INFO L290 TraceCheckUtils]: 25: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:57,004 INFO L290 TraceCheckUtils]: 24: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:57,004 INFO L290 TraceCheckUtils]: 23: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:57,004 INFO L290 TraceCheckUtils]: 22: Hoare triple {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:57,004 INFO L290 TraceCheckUtils]: 21: Hoare triple {184155#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< correct_version_~l~0 correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {183835#(<= |correct_version_#in~m| (* |correct_version_#in~a| 10))} is VALID [2022-04-27 22:35:57,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {184159#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184155#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< correct_version_~l~0 correct_version_~m))} is VALID [2022-04-27 22:35:57,005 INFO L290 TraceCheckUtils]: 19: Hoare triple {184163#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184159#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 correct_version_~a) correct_version_~m))} is VALID [2022-04-27 22:35:57,006 INFO L290 TraceCheckUtils]: 18: Hoare triple {184167#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184163#(or (< (+ (* 2 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} is VALID [2022-04-27 22:35:57,006 INFO L290 TraceCheckUtils]: 17: Hoare triple {184171#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184167#(or (< (+ correct_version_~l~0 (* 3 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} is VALID [2022-04-27 22:35:57,007 INFO L290 TraceCheckUtils]: 16: Hoare triple {184175#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184171#(or (< (+ correct_version_~l~0 (* 4 correct_version_~a)) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} is VALID [2022-04-27 22:35:57,007 INFO L290 TraceCheckUtils]: 15: Hoare triple {184179#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184175#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 5 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:35:57,007 INFO L290 TraceCheckUtils]: 14: Hoare triple {184183#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184179#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 6 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:35:57,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {184187#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184183#(or (< (+ (* 7 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} is VALID [2022-04-27 22:35:57,008 INFO L290 TraceCheckUtils]: 12: Hoare triple {184191#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184187#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 8 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:35:57,009 INFO L290 TraceCheckUtils]: 11: Hoare triple {184195#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 10 correct_version_~a)) correct_version_~m))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {184191#(or (< (+ (* 9 correct_version_~a) correct_version_~l~0) correct_version_~m) (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)))} is VALID [2022-04-27 22:35:57,009 INFO L290 TraceCheckUtils]: 10: Hoare triple {184195#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 10 correct_version_~a)) correct_version_~m))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {184195#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 10 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:35:57,009 INFO L290 TraceCheckUtils]: 9: Hoare triple {184195#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 10 correct_version_~a)) correct_version_~m))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {184195#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 10 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:35:57,010 INFO L290 TraceCheckUtils]: 8: Hoare triple {183776#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {184195#(or (<= |correct_version_#in~m| (* |correct_version_#in~a| 10)) (< (+ correct_version_~l~0 (* 10 correct_version_~a)) correct_version_~m))} is VALID [2022-04-27 22:35:57,010 INFO L272 TraceCheckUtils]: 7: Hoare triple {183776#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L290 TraceCheckUtils]: 6: Hoare triple {183776#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L290 TraceCheckUtils]: 5: Hoare triple {183776#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L272 TraceCheckUtils]: 4: Hoare triple {183776#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183776#true} {183776#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L290 TraceCheckUtils]: 2: Hoare triple {183776#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L290 TraceCheckUtils]: 1: Hoare triple {183776#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L272 TraceCheckUtils]: 0: Hoare triple {183776#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {183776#true} is VALID [2022-04-27 22:35:57,010 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 11 proven. 110 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:35:57,011 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1722781391] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:35:57,011 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:35:57,011 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 27, 27] total 73 [2022-04-27 22:35:57,011 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [871839155] [2022-04-27 22:35:57,011 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:35:57,011 INFO L78 Accepts]: Start accepts. Automaton has has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 56 [2022-04-27 22:35:57,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:35:57,012 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:35:57,086 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:35:57,086 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 73 states [2022-04-27 22:35:57,086 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:35:57,086 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 73 interpolants. [2022-04-27 22:35:57,087 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=243, Invalid=5013, Unknown=0, NotChecked=0, Total=5256 [2022-04-27 22:35:57,087 INFO L87 Difference]: Start difference. First operand 832 states and 934 transitions. Second operand has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:18,238 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:18,239 INFO L93 Difference]: Finished difference Result 948 states and 1071 transitions. [2022-04-27 22:36:18,239 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 47 states. [2022-04-27 22:36:18,239 INFO L78 Accepts]: Start accepts. Automaton has has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 56 [2022-04-27 22:36:18,239 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:36:18,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:18,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 210 transitions. [2022-04-27 22:36:18,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:18,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 210 transitions. [2022-04-27 22:36:18,242 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 210 transitions. [2022-04-27 22:36:18,375 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:36:18,423 INFO L225 Difference]: With dead ends: 948 [2022-04-27 22:36:18,423 INFO L226 Difference]: Without dead ends: 934 [2022-04-27 22:36:18,428 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 67 SyntacticMatches, 5 SemanticMatches, 115 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1949 ImplicationChecksByTransitivity, 3.9s TimeCoverageRelationStatistics Valid=846, Invalid=12726, Unknown=0, NotChecked=0, Total=13572 [2022-04-27 22:36:18,428 INFO L413 NwaCegarLoop]: 124 mSDtfsCounter, 1485 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 7387 mSolverCounterSat, 169 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1490 SdHoareTripleChecker+Valid, 341 SdHoareTripleChecker+Invalid, 7556 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 169 IncrementalHoareTripleChecker+Valid, 7387 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.4s IncrementalHoareTripleChecker+Time [2022-04-27 22:36:18,428 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [1490 Valid, 341 Invalid, 7556 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [169 Valid, 7387 Invalid, 0 Unknown, 0 Unchecked, 5.4s Time] [2022-04-27 22:36:18,429 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 934 states. [2022-04-27 22:36:26,858 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 934 to 925. [2022-04-27 22:36:26,858 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:36:26,859 INFO L82 GeneralOperation]: Start isEquivalent. First operand 934 states. Second operand has 925 states, 805 states have (on average 1.1366459627329193) internal successors, (915), 879 states have internal predecessors, (915), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (84), 40 states have call predecessors, (84), 40 states have call successors, (84) [2022-04-27 22:36:26,860 INFO L74 IsIncluded]: Start isIncluded. First operand 934 states. Second operand has 925 states, 805 states have (on average 1.1366459627329193) internal successors, (915), 879 states have internal predecessors, (915), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (84), 40 states have call predecessors, (84), 40 states have call successors, (84) [2022-04-27 22:36:26,860 INFO L87 Difference]: Start difference. First operand 934 states. Second operand has 925 states, 805 states have (on average 1.1366459627329193) internal successors, (915), 879 states have internal predecessors, (915), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (84), 40 states have call predecessors, (84), 40 states have call successors, (84) [2022-04-27 22:36:26,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:26,892 INFO L93 Difference]: Finished difference Result 934 states and 1051 transitions. [2022-04-27 22:36:26,892 INFO L276 IsEmpty]: Start isEmpty. Operand 934 states and 1051 transitions. [2022-04-27 22:36:26,898 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:36:26,898 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:36:26,899 INFO L74 IsIncluded]: Start isIncluded. First operand has 925 states, 805 states have (on average 1.1366459627329193) internal successors, (915), 879 states have internal predecessors, (915), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (84), 40 states have call predecessors, (84), 40 states have call successors, (84) Second operand 934 states. [2022-04-27 22:36:26,900 INFO L87 Difference]: Start difference. First operand has 925 states, 805 states have (on average 1.1366459627329193) internal successors, (915), 879 states have internal predecessors, (915), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (84), 40 states have call predecessors, (84), 40 states have call successors, (84) Second operand 934 states. [2022-04-27 22:36:26,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:26,933 INFO L93 Difference]: Finished difference Result 934 states and 1051 transitions. [2022-04-27 22:36:26,933 INFO L276 IsEmpty]: Start isEmpty. Operand 934 states and 1051 transitions. [2022-04-27 22:36:26,939 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:36:26,939 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:36:26,939 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:36:26,939 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:36:26,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 925 states, 805 states have (on average 1.1366459627329193) internal successors, (915), 879 states have internal predecessors, (915), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (84), 40 states have call predecessors, (84), 40 states have call successors, (84) [2022-04-27 22:36:26,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 925 states to 925 states and 1041 transitions. [2022-04-27 22:36:26,980 INFO L78 Accepts]: Start accepts. Automaton has 925 states and 1041 transitions. Word has length 56 [2022-04-27 22:36:26,980 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:36:26,980 INFO L495 AbstractCegarLoop]: Abstraction has 925 states and 1041 transitions. [2022-04-27 22:36:26,981 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:26,981 INFO L276 IsEmpty]: Start isEmpty. Operand 925 states and 1041 transitions. [2022-04-27 22:36:26,987 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 22:36:26,987 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:36:26,987 INFO L195 NwaCegarLoop]: trace histogram [11, 10, 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-27 22:36:27,006 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (78)] Forceful destruction successful, exit code 0 [2022-04-27 22:36:27,204 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable86,78 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:36:27,204 INFO L420 AbstractCegarLoop]: === Iteration 88 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:36:27,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:36:27,204 INFO L85 PathProgramCache]: Analyzing trace with hash -1584271747, now seen corresponding path program 78 times [2022-04-27 22:36:27,204 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:36:27,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [474466466] [2022-04-27 22:36:27,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:36:27,204 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:36:27,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:27,243 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:36:27,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:27,245 INFO L290 TraceCheckUtils]: 0: Hoare triple {188986#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {188939#true} is VALID [2022-04-27 22:36:27,245 INFO L290 TraceCheckUtils]: 1: Hoare triple {188939#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:27,246 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {188939#true} {188939#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:27,246 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:36:27,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:27,507 INFO L290 TraceCheckUtils]: 0: Hoare triple {188939#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,508 INFO L290 TraceCheckUtils]: 1: Hoare triple {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,508 INFO L290 TraceCheckUtils]: 2: Hoare triple {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,509 INFO L290 TraceCheckUtils]: 3: Hoare triple {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188988#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,509 INFO L290 TraceCheckUtils]: 4: Hoare triple {188988#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188989#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,510 INFO L290 TraceCheckUtils]: 5: Hoare triple {188989#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188990#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,510 INFO L290 TraceCheckUtils]: 6: Hoare triple {188990#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188991#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,511 INFO L290 TraceCheckUtils]: 7: Hoare triple {188991#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188992#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:27,518 INFO L290 TraceCheckUtils]: 8: Hoare triple {188992#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188993#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {188993#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188994#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,519 INFO L290 TraceCheckUtils]: 10: Hoare triple {188994#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188995#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:27,520 INFO L290 TraceCheckUtils]: 11: Hoare triple {188995#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188996#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,520 INFO L290 TraceCheckUtils]: 12: Hoare triple {188996#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188997#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 10 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:27,521 INFO L290 TraceCheckUtils]: 13: Hoare triple {188997#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 10 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188998#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 10) 1) correct_version_~m))} is VALID [2022-04-27 22:36:27,521 INFO L290 TraceCheckUtils]: 14: Hoare triple {188998#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 10) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,522 INFO L290 TraceCheckUtils]: 15: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,522 INFO L290 TraceCheckUtils]: 16: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,522 INFO L290 TraceCheckUtils]: 17: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,522 INFO L290 TraceCheckUtils]: 18: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,522 INFO L290 TraceCheckUtils]: 19: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,523 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} {188939#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} is VALID [2022-04-27 22:36:27,523 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 30 [2022-04-27 22:36:27,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:27,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {188939#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:36:27,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:36:27,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:36:27,866 INFO L290 TraceCheckUtils]: 3: Hoare triple {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189001#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:36:27,867 INFO L290 TraceCheckUtils]: 4: Hoare triple {189001#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:36:27,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {189002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:36:27,868 INFO L290 TraceCheckUtils]: 6: Hoare triple {189003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:36:27,869 INFO L290 TraceCheckUtils]: 7: Hoare triple {189004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:36:27,869 INFO L290 TraceCheckUtils]: 8: Hoare triple {189005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:36:27,870 INFO L290 TraceCheckUtils]: 9: Hoare triple {189006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189007#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:36:27,870 INFO L290 TraceCheckUtils]: 10: Hoare triple {189007#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189008#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} is VALID [2022-04-27 22:36:27,871 INFO L290 TraceCheckUtils]: 11: Hoare triple {189008#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189009#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 9 student_version_~a)))} is VALID [2022-04-27 22:36:27,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {189009#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 9 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189010#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 10)))} is VALID [2022-04-27 22:36:27,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {189010#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 10)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,872 INFO L290 TraceCheckUtils]: 14: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,873 INFO L290 TraceCheckUtils]: 15: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,873 INFO L290 TraceCheckUtils]: 16: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,873 INFO L290 TraceCheckUtils]: 17: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,875 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {188940#false} is VALID [2022-04-27 22:36:27,875 INFO L272 TraceCheckUtils]: 0: Hoare triple {188939#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188986#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:36:27,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {188986#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {188939#true} is VALID [2022-04-27 22:36:27,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {188939#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:27,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {188939#true} {188939#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:27,875 INFO L272 TraceCheckUtils]: 4: Hoare triple {188939#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:27,875 INFO L290 TraceCheckUtils]: 5: Hoare triple {188939#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:27,876 INFO L290 TraceCheckUtils]: 6: Hoare triple {188939#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:27,876 INFO L272 TraceCheckUtils]: 7: Hoare triple {188939#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:27,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {188939#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,877 INFO L290 TraceCheckUtils]: 11: Hoare triple {188987#(and (<= 0 correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188988#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {188988#(and (<= correct_version_~a correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188989#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,879 INFO L290 TraceCheckUtils]: 13: Hoare triple {188989#(and (<= (* 2 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188990#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,879 INFO L290 TraceCheckUtils]: 14: Hoare triple {188990#(and (<= (* 3 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188991#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,880 INFO L290 TraceCheckUtils]: 15: Hoare triple {188991#(and (<= (* 4 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188992#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:27,880 INFO L290 TraceCheckUtils]: 16: Hoare triple {188992#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188993#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,881 INFO L290 TraceCheckUtils]: 17: Hoare triple {188993#(and (<= (* 6 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188994#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,881 INFO L290 TraceCheckUtils]: 18: Hoare triple {188994#(and (<= (* 7 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188995#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:27,882 INFO L290 TraceCheckUtils]: 19: Hoare triple {188995#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188996#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:27,882 INFO L290 TraceCheckUtils]: 20: Hoare triple {188996#(and (<= (* 9 correct_version_~a) correct_version_~l~0) (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188997#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 10 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:27,883 INFO L290 TraceCheckUtils]: 21: Hoare triple {188997#(and (= |correct_version_#in~m| correct_version_~m) (= |correct_version_#in~a| correct_version_~a) (<= (* 10 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188998#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 10) 1) correct_version_~m))} is VALID [2022-04-27 22:36:27,883 INFO L290 TraceCheckUtils]: 22: Hoare triple {188998#(and (= |correct_version_#in~m| correct_version_~m) (<= (+ (* |correct_version_#in~a| 10) 1) correct_version_~m))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,884 INFO L290 TraceCheckUtils]: 23: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,884 INFO L290 TraceCheckUtils]: 24: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,884 INFO L290 TraceCheckUtils]: 25: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,885 INFO L290 TraceCheckUtils]: 26: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,885 INFO L290 TraceCheckUtils]: 27: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:27,886 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} {188939#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} is VALID [2022-04-27 22:36:27,886 INFO L290 TraceCheckUtils]: 29: Hoare triple {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} is VALID [2022-04-27 22:36:27,886 INFO L272 TraceCheckUtils]: 30: Hoare triple {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:27,887 INFO L290 TraceCheckUtils]: 31: Hoare triple {188939#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:36:27,887 INFO L290 TraceCheckUtils]: 32: Hoare triple {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:36:27,888 INFO L290 TraceCheckUtils]: 33: Hoare triple {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} is VALID [2022-04-27 22:36:27,888 INFO L290 TraceCheckUtils]: 34: Hoare triple {189000#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 0))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189001#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} is VALID [2022-04-27 22:36:27,889 INFO L290 TraceCheckUtils]: 35: Hoare triple {189001#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:36:27,889 INFO L290 TraceCheckUtils]: 36: Hoare triple {189002#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} is VALID [2022-04-27 22:36:27,890 INFO L290 TraceCheckUtils]: 37: Hoare triple {189003#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} is VALID [2022-04-27 22:36:27,890 INFO L290 TraceCheckUtils]: 38: Hoare triple {189004#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* student_version_~a 4)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:36:27,891 INFO L290 TraceCheckUtils]: 39: Hoare triple {189005#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:36:27,892 INFO L290 TraceCheckUtils]: 40: Hoare triple {189006#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189007#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:36:27,892 INFO L290 TraceCheckUtils]: 41: Hoare triple {189007#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189008#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} is VALID [2022-04-27 22:36:27,893 INFO L290 TraceCheckUtils]: 42: Hoare triple {189008#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 8 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189009#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 9 student_version_~a)))} is VALID [2022-04-27 22:36:27,893 INFO L290 TraceCheckUtils]: 43: Hoare triple {189009#(and (= |student_version_#in~a| student_version_~a) (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 9 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189010#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 10)))} is VALID [2022-04-27 22:36:27,894 INFO L290 TraceCheckUtils]: 44: Hoare triple {189010#(and (= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* |student_version_#in~a| 10)))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,894 INFO L290 TraceCheckUtils]: 45: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,894 INFO L290 TraceCheckUtils]: 46: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,895 INFO L290 TraceCheckUtils]: 47: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,895 INFO L290 TraceCheckUtils]: 48: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,895 INFO L290 TraceCheckUtils]: 49: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:27,896 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {188940#false} is VALID [2022-04-27 22:36:27,896 INFO L290 TraceCheckUtils]: 51: Hoare triple {188940#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {188940#false} is VALID [2022-04-27 22:36:27,896 INFO L272 TraceCheckUtils]: 52: Hoare triple {188940#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {188940#false} is VALID [2022-04-27 22:36:27,896 INFO L290 TraceCheckUtils]: 53: Hoare triple {188940#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {188940#false} is VALID [2022-04-27 22:36:27,896 INFO L290 TraceCheckUtils]: 54: Hoare triple {188940#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {188940#false} is VALID [2022-04-27 22:36:27,896 INFO L290 TraceCheckUtils]: 55: Hoare triple {188940#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188940#false} is VALID [2022-04-27 22:36:27,897 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 0 proven. 121 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:36:27,897 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:36:27,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [474466466] [2022-04-27 22:36:27,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [474466466] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:36:27,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [278869280] [2022-04-27 22:36:27,897 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 22:36:27,897 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:36:27,897 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:36:27,912 INFO L229 MonitoredProcess]: Starting monitored process 79 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:36:27,958 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (79)] Waiting until timeout for monitored process [2022-04-27 22:36:28,038 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-27 22:36:28,038 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:36:28,039 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-27 22:36:28,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:36:28,054 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:36:29,562 INFO L272 TraceCheckUtils]: 0: Hoare triple {188939#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:29,563 INFO L290 TraceCheckUtils]: 1: Hoare triple {188939#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {188939#true} is VALID [2022-04-27 22:36:29,563 INFO L290 TraceCheckUtils]: 2: Hoare triple {188939#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:29,563 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {188939#true} {188939#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:29,563 INFO L272 TraceCheckUtils]: 4: Hoare triple {188939#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:29,563 INFO L290 TraceCheckUtils]: 5: Hoare triple {188939#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:29,563 INFO L290 TraceCheckUtils]: 6: Hoare triple {188939#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:29,563 INFO L272 TraceCheckUtils]: 7: Hoare triple {188939#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:29,564 INFO L290 TraceCheckUtils]: 8: Hoare triple {188939#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {189039#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,564 INFO L290 TraceCheckUtils]: 9: Hoare triple {189039#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {189039#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,564 INFO L290 TraceCheckUtils]: 10: Hoare triple {189039#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {189039#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,565 INFO L290 TraceCheckUtils]: 11: Hoare triple {189039#(and (<= correct_version_~m |correct_version_#in~m|) (<= 0 correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189049#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {189049#(and (<= correct_version_~m |correct_version_#in~m|) (<= correct_version_~a correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189053#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {189053#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 2 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189057#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,567 INFO L290 TraceCheckUtils]: 14: Hoare triple {189057#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 3 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189061#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,567 INFO L290 TraceCheckUtils]: 15: Hoare triple {189061#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 4 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189065#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:29,568 INFO L290 TraceCheckUtils]: 16: Hoare triple {189065#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 5 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189069#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {189069#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 6 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189073#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 7 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,569 INFO L290 TraceCheckUtils]: 18: Hoare triple {189073#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 7 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189077#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} is VALID [2022-04-27 22:36:29,569 INFO L290 TraceCheckUtils]: 19: Hoare triple {189077#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| correct_version_~a) (<= (* 8 correct_version_~a) correct_version_~l~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189081#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 9 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} is VALID [2022-04-27 22:36:29,570 INFO L290 TraceCheckUtils]: 20: Hoare triple {189081#(and (<= correct_version_~m |correct_version_#in~m|) (<= (* 9 correct_version_~a) correct_version_~l~0) (<= |correct_version_#in~a| correct_version_~a))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189085#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 10)))} is VALID [2022-04-27 22:36:29,571 INFO L290 TraceCheckUtils]: 21: Hoare triple {189085#(and (<= correct_version_~m |correct_version_#in~m|) (<= |correct_version_#in~a| (div correct_version_~l~0 10)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:29,571 INFO L290 TraceCheckUtils]: 22: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:29,571 INFO L290 TraceCheckUtils]: 23: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:29,572 INFO L290 TraceCheckUtils]: 24: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:29,572 INFO L290 TraceCheckUtils]: 25: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:29,572 INFO L290 TraceCheckUtils]: 26: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:29,572 INFO L290 TraceCheckUtils]: 27: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:29,573 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} {188939#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} is VALID [2022-04-27 22:36:29,573 INFO L290 TraceCheckUtils]: 29: Hoare triple {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} is VALID [2022-04-27 22:36:29,574 INFO L272 TraceCheckUtils]: 30: Hoare triple {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:29,574 INFO L290 TraceCheckUtils]: 31: Hoare triple {188939#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {189119#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,574 INFO L290 TraceCheckUtils]: 32: Hoare triple {189119#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {189119#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,575 INFO L290 TraceCheckUtils]: 33: Hoare triple {189119#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {189119#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,575 INFO L290 TraceCheckUtils]: 34: Hoare triple {189119#(and (<= student_version_~l~1 0) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189129#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,576 INFO L290 TraceCheckUtils]: 35: Hoare triple {189129#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 student_version_~a) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189133#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} is VALID [2022-04-27 22:36:29,576 INFO L290 TraceCheckUtils]: 36: Hoare triple {189133#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 2 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189137#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,577 INFO L290 TraceCheckUtils]: 37: Hoare triple {189137#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 3 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189141#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,577 INFO L290 TraceCheckUtils]: 38: Hoare triple {189141#(and (<= student_version_~l~1 (* student_version_~a 4)) (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189145#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} is VALID [2022-04-27 22:36:29,578 INFO L290 TraceCheckUtils]: 39: Hoare triple {189145#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 5 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189149#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} is VALID [2022-04-27 22:36:29,579 INFO L290 TraceCheckUtils]: 40: Hoare triple {189149#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 6 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189153#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 7 student_version_~a)))} is VALID [2022-04-27 22:36:29,579 INFO L290 TraceCheckUtils]: 41: Hoare triple {189153#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 7 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189157#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 8 student_version_~a)))} is VALID [2022-04-27 22:36:29,580 INFO L290 TraceCheckUtils]: 42: Hoare triple {189157#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~a |student_version_#in~a|) (<= student_version_~l~1 (* 8 student_version_~a)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189161#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 9 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,580 INFO L290 TraceCheckUtils]: 43: Hoare triple {189161#(and (<= |student_version_#in~m| student_version_~m) (<= student_version_~l~1 (* 9 student_version_~a)) (<= student_version_~a |student_version_#in~a|))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189165#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 10)) |student_version_#in~a|))} is VALID [2022-04-27 22:36:29,581 INFO L290 TraceCheckUtils]: 44: Hoare triple {189165#(and (<= |student_version_#in~m| student_version_~m) (<= (div (- student_version_~l~1) (- 10)) |student_version_#in~a|))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:29,581 INFO L290 TraceCheckUtils]: 45: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:29,581 INFO L290 TraceCheckUtils]: 46: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:29,582 INFO L290 TraceCheckUtils]: 47: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:29,582 INFO L290 TraceCheckUtils]: 48: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:29,582 INFO L290 TraceCheckUtils]: 49: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:29,583 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {188940#false} is VALID [2022-04-27 22:36:29,583 INFO L290 TraceCheckUtils]: 51: Hoare triple {188940#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {188940#false} is VALID [2022-04-27 22:36:29,583 INFO L272 TraceCheckUtils]: 52: Hoare triple {188940#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {188940#false} is VALID [2022-04-27 22:36:29,583 INFO L290 TraceCheckUtils]: 53: Hoare triple {188940#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {188940#false} is VALID [2022-04-27 22:36:29,583 INFO L290 TraceCheckUtils]: 54: Hoare triple {188940#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {188940#false} is VALID [2022-04-27 22:36:29,583 INFO L290 TraceCheckUtils]: 55: Hoare triple {188940#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188940#false} is VALID [2022-04-27 22:36:29,584 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 0 proven. 121 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:36:29,584 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:36:32,507 INFO L290 TraceCheckUtils]: 55: Hoare triple {188940#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188940#false} is VALID [2022-04-27 22:36:32,507 INFO L290 TraceCheckUtils]: 54: Hoare triple {188940#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {188940#false} is VALID [2022-04-27 22:36:32,507 INFO L290 TraceCheckUtils]: 53: Hoare triple {188940#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {188940#false} is VALID [2022-04-27 22:36:32,507 INFO L272 TraceCheckUtils]: 52: Hoare triple {188940#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {188940#false} is VALID [2022-04-27 22:36:32,507 INFO L290 TraceCheckUtils]: 51: Hoare triple {188940#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {188940#false} is VALID [2022-04-27 22:36:32,508 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {188940#false} is VALID [2022-04-27 22:36:32,508 INFO L290 TraceCheckUtils]: 49: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:32,509 INFO L290 TraceCheckUtils]: 48: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:32,509 INFO L290 TraceCheckUtils]: 47: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:32,509 INFO L290 TraceCheckUtils]: 46: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:32,510 INFO L290 TraceCheckUtils]: 45: Hoare triple {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:32,510 INFO L290 TraceCheckUtils]: 44: Hoare triple {189238#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< student_version_~l~1 student_version_~m))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {189011#(<= |student_version_#in~m| (* |student_version_#in~a| 10))} is VALID [2022-04-27 22:36:32,511 INFO L290 TraceCheckUtils]: 43: Hoare triple {189242#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189238#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< student_version_~l~1 student_version_~m))} is VALID [2022-04-27 22:36:32,511 INFO L290 TraceCheckUtils]: 42: Hoare triple {189246#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189242#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 student_version_~a) student_version_~m))} is VALID [2022-04-27 22:36:32,512 INFO L290 TraceCheckUtils]: 41: Hoare triple {189250#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189246#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 (* 2 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:36:32,512 INFO L290 TraceCheckUtils]: 40: Hoare triple {189254#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189250#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 3 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:36:32,513 INFO L290 TraceCheckUtils]: 39: Hoare triple {189258#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189254#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 (* student_version_~a 4)) student_version_~m))} is VALID [2022-04-27 22:36:32,513 INFO L290 TraceCheckUtils]: 38: Hoare triple {189262#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189258#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 5 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:36:32,514 INFO L290 TraceCheckUtils]: 37: Hoare triple {189266#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189262#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 6 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:36:32,514 INFO L290 TraceCheckUtils]: 36: Hoare triple {189270#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189266#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ (* 7 student_version_~a) student_version_~l~1) student_version_~m))} is VALID [2022-04-27 22:36:32,515 INFO L290 TraceCheckUtils]: 35: Hoare triple {189274#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189270#(or (< (+ (* 8 student_version_~a) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} is VALID [2022-04-27 22:36:32,516 INFO L290 TraceCheckUtils]: 34: Hoare triple {189278#(or (< (+ (* student_version_~a 10) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {189274#(or (<= |student_version_#in~m| (* |student_version_#in~a| 10)) (< (+ student_version_~l~1 (* 9 student_version_~a)) student_version_~m))} is VALID [2022-04-27 22:36:32,516 INFO L290 TraceCheckUtils]: 33: Hoare triple {189278#(or (< (+ (* student_version_~a 10) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {189278#(or (< (+ (* student_version_~a 10) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} is VALID [2022-04-27 22:36:32,516 INFO L290 TraceCheckUtils]: 32: Hoare triple {189278#(or (< (+ (* student_version_~a 10) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {189278#(or (< (+ (* student_version_~a 10) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} is VALID [2022-04-27 22:36:32,517 INFO L290 TraceCheckUtils]: 31: Hoare triple {188939#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {189278#(or (< (+ (* student_version_~a 10) student_version_~l~1) student_version_~m) (<= |student_version_#in~m| (* |student_version_#in~a| 10)))} is VALID [2022-04-27 22:36:32,517 INFO L272 TraceCheckUtils]: 30: Hoare triple {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:32,517 INFO L290 TraceCheckUtils]: 29: Hoare triple {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} is VALID [2022-04-27 22:36:32,518 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} {188939#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {188965#(<= (+ (* main_~a~0 10) 1) main_~m~0)} is VALID [2022-04-27 22:36:32,518 INFO L290 TraceCheckUtils]: 27: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:32,519 INFO L290 TraceCheckUtils]: 26: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:32,519 INFO L290 TraceCheckUtils]: 25: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:32,519 INFO L290 TraceCheckUtils]: 24: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:32,519 INFO L290 TraceCheckUtils]: 23: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:32,520 INFO L290 TraceCheckUtils]: 22: Hoare triple {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:32,520 INFO L290 TraceCheckUtils]: 21: Hoare triple {189318#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {188999#(<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|)} is VALID [2022-04-27 22:36:32,521 INFO L290 TraceCheckUtils]: 20: Hoare triple {189322#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189318#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (not (< correct_version_~l~0 correct_version_~m)))} is VALID [2022-04-27 22:36:32,521 INFO L290 TraceCheckUtils]: 19: Hoare triple {189326#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189322#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 correct_version_~a)))} is VALID [2022-04-27 22:36:32,522 INFO L290 TraceCheckUtils]: 18: Hoare triple {189330#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189326#(or (<= correct_version_~m (+ (* 2 correct_version_~a) correct_version_~l~0)) (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|))} is VALID [2022-04-27 22:36:32,522 INFO L290 TraceCheckUtils]: 17: Hoare triple {189334#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189330#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 3 correct_version_~a))))} is VALID [2022-04-27 22:36:32,523 INFO L290 TraceCheckUtils]: 16: Hoare triple {189338#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189334#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 4 correct_version_~a))))} is VALID [2022-04-27 22:36:32,524 INFO L290 TraceCheckUtils]: 15: Hoare triple {189342#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189338#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 5 correct_version_~a))))} is VALID [2022-04-27 22:36:32,524 INFO L290 TraceCheckUtils]: 14: Hoare triple {189346#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189342#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 6 correct_version_~a))))} is VALID [2022-04-27 22:36:32,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {189350#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189346#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ (* 7 correct_version_~a) correct_version_~l~0)))} is VALID [2022-04-27 22:36:32,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {189354#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189350#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 8 correct_version_~a))))} is VALID [2022-04-27 22:36:32,526 INFO L290 TraceCheckUtils]: 11: Hoare triple {189358#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 10 correct_version_~a))))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {189354#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ (* 9 correct_version_~a) correct_version_~l~0)))} is VALID [2022-04-27 22:36:32,526 INFO L290 TraceCheckUtils]: 10: Hoare triple {189358#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 10 correct_version_~a))))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {189358#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 10 correct_version_~a))))} is VALID [2022-04-27 22:36:32,527 INFO L290 TraceCheckUtils]: 9: Hoare triple {189358#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 10 correct_version_~a))))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {189358#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 10 correct_version_~a))))} is VALID [2022-04-27 22:36:32,527 INFO L290 TraceCheckUtils]: 8: Hoare triple {188939#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {189358#(or (<= (+ (* |correct_version_#in~a| 10) 1) |correct_version_#in~m|) (<= correct_version_~m (+ correct_version_~l~0 (* 10 correct_version_~a))))} is VALID [2022-04-27 22:36:32,527 INFO L272 TraceCheckUtils]: 7: Hoare triple {188939#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:32,527 INFO L290 TraceCheckUtils]: 6: Hoare triple {188939#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:32,527 INFO L290 TraceCheckUtils]: 5: Hoare triple {188939#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {188939#true} is VALID [2022-04-27 22:36:32,527 INFO L272 TraceCheckUtils]: 4: Hoare triple {188939#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:32,528 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {188939#true} {188939#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:32,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {188939#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:32,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {188939#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {188939#true} is VALID [2022-04-27 22:36:32,528 INFO L272 TraceCheckUtils]: 0: Hoare triple {188939#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {188939#true} is VALID [2022-04-27 22:36:32,528 INFO L134 CoverageAnalysis]: Checked inductivity of 125 backedges. 11 proven. 110 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 22:36:32,528 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [278869280] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:36:32,528 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:36:32,528 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [29, 27, 27] total 73 [2022-04-27 22:36:32,528 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [297865713] [2022-04-27 22:36:32,528 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:36:32,529 INFO L78 Accepts]: Start accepts. Automaton has has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 56 [2022-04-27 22:36:32,529 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:36:32,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:32,607 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:36:32,607 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 73 states [2022-04-27 22:36:32,607 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:36:32,608 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 73 interpolants. [2022-04-27 22:36:32,608 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=243, Invalid=5013, Unknown=0, NotChecked=0, Total=5256 [2022-04-27 22:36:32,608 INFO L87 Difference]: Start difference. First operand 925 states and 1041 transitions. Second operand has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:56,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:36:56,735 INFO L93 Difference]: Finished difference Result 940 states and 1056 transitions. [2022-04-27 22:36:56,735 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 47 states. [2022-04-27 22:36:56,736 INFO L78 Accepts]: Start accepts. Automaton has has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 56 [2022-04-27 22:36:56,736 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:36:56,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:56,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 209 transitions. [2022-04-27 22:36:56,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:36:56,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 209 transitions. [2022-04-27 22:36:56,739 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 209 transitions. [2022-04-27 22:36:56,865 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-27 22:36:56,907 INFO L225 Difference]: With dead ends: 940 [2022-04-27 22:36:56,907 INFO L226 Difference]: Without dead ends: 928 [2022-04-27 22:36:56,912 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 66 SyntacticMatches, 6 SemanticMatches, 115 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1963 ImplicationChecksByTransitivity, 4.5s TimeCoverageRelationStatistics Valid=846, Invalid=12726, Unknown=0, NotChecked=0, Total=13572 [2022-04-27 22:36:56,912 INFO L413 NwaCegarLoop]: 126 mSDtfsCounter, 1459 mSDsluCounter, 227 mSDsCounter, 0 mSdLazyCounter, 7881 mSolverCounterSat, 150 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1480 SdHoareTripleChecker+Valid, 353 SdHoareTripleChecker+Invalid, 8031 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 150 IncrementalHoareTripleChecker+Valid, 7881 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.1s IncrementalHoareTripleChecker+Time [2022-04-27 22:36:56,912 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [1480 Valid, 353 Invalid, 8031 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [150 Valid, 7881 Invalid, 0 Unknown, 0 Unchecked, 6.1s Time] [2022-04-27 22:36:56,913 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 928 states. [2022-04-27 22:37:04,547 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 928 to 926. [2022-04-27 22:37:04,547 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:37:04,548 INFO L82 GeneralOperation]: Start isEquivalent. First operand 928 states. Second operand has 926 states, 806 states have (on average 1.1364764267990075) internal successors, (916), 880 states have internal predecessors, (916), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (79), 40 states have call predecessors, (79), 40 states have call successors, (79) [2022-04-27 22:37:04,548 INFO L74 IsIncluded]: Start isIncluded. First operand 928 states. Second operand has 926 states, 806 states have (on average 1.1364764267990075) internal successors, (916), 880 states have internal predecessors, (916), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (79), 40 states have call predecessors, (79), 40 states have call successors, (79) [2022-04-27 22:37:04,549 INFO L87 Difference]: Start difference. First operand 928 states. Second operand has 926 states, 806 states have (on average 1.1364764267990075) internal successors, (916), 880 states have internal predecessors, (916), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (79), 40 states have call predecessors, (79), 40 states have call successors, (79) [2022-04-27 22:37:04,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:04,581 INFO L93 Difference]: Finished difference Result 928 states and 1039 transitions. [2022-04-27 22:37:04,581 INFO L276 IsEmpty]: Start isEmpty. Operand 928 states and 1039 transitions. [2022-04-27 22:37:04,586 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:04,587 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:04,588 INFO L74 IsIncluded]: Start isIncluded. First operand has 926 states, 806 states have (on average 1.1364764267990075) internal successors, (916), 880 states have internal predecessors, (916), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (79), 40 states have call predecessors, (79), 40 states have call successors, (79) Second operand 928 states. [2022-04-27 22:37:04,588 INFO L87 Difference]: Start difference. First operand has 926 states, 806 states have (on average 1.1364764267990075) internal successors, (916), 880 states have internal predecessors, (916), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (79), 40 states have call predecessors, (79), 40 states have call successors, (79) Second operand 928 states. [2022-04-27 22:37:04,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:04,620 INFO L93 Difference]: Finished difference Result 928 states and 1039 transitions. [2022-04-27 22:37:04,620 INFO L276 IsEmpty]: Start isEmpty. Operand 928 states and 1039 transitions. [2022-04-27 22:37:04,626 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:04,626 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:04,626 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:37:04,626 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:37:04,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 926 states, 806 states have (on average 1.1364764267990075) internal successors, (916), 880 states have internal predecessors, (916), 42 states have call successors, (42), 5 states have call predecessors, (42), 77 states have return successors, (79), 40 states have call predecessors, (79), 40 states have call successors, (79) [2022-04-27 22:37:04,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 926 states to 926 states and 1037 transitions. [2022-04-27 22:37:04,669 INFO L78 Accepts]: Start accepts. Automaton has 926 states and 1037 transitions. Word has length 56 [2022-04-27 22:37:04,669 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:37:04,669 INFO L495 AbstractCegarLoop]: Abstraction has 926 states and 1037 transitions. [2022-04-27 22:37:04,669 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 73 states, 73 states have (on average 1.452054794520548) internal successors, (106), 72 states have internal predecessors, (106), 3 states have call successors, (6), 3 states have call predecessors, (6), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 22:37:04,669 INFO L276 IsEmpty]: Start isEmpty. Operand 926 states and 1037 transitions. [2022-04-27 22:37:04,676 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 22:37:04,676 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:37:04,676 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:37:04,693 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (79)] Forceful destruction successful, exit code 0 [2022-04-27 22:37:04,883 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable87,79 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:37:04,883 INFO L420 AbstractCegarLoop]: === Iteration 89 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:37:04,883 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:37:04,883 INFO L85 PathProgramCache]: Analyzing trace with hash -2014023679, now seen corresponding path program 79 times [2022-04-27 22:37:04,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:37:04,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [134603669] [2022-04-27 22:37:04,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:37:04,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:37:04,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:04,908 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:37:04,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:04,910 INFO L290 TraceCheckUtils]: 0: Hoare triple {194126#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {194080#true} is VALID [2022-04-27 22:37:04,910 INFO L290 TraceCheckUtils]: 1: Hoare triple {194080#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:04,910 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {194080#true} {194080#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:04,910 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:37:04,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:05,001 INFO L290 TraceCheckUtils]: 0: Hoare triple {194080#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {194127#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {194127#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194128#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,003 INFO L290 TraceCheckUtils]: 2: Hoare triple {194128#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194129#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,003 INFO L290 TraceCheckUtils]: 3: Hoare triple {194129#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194130#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,003 INFO L290 TraceCheckUtils]: 4: Hoare triple {194130#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194131#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,004 INFO L290 TraceCheckUtils]: 5: Hoare triple {194131#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194132#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,004 INFO L290 TraceCheckUtils]: 6: Hoare triple {194132#(<= 5 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,005 INFO L290 TraceCheckUtils]: 7: Hoare triple {194133#(<= 6 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,005 INFO L290 TraceCheckUtils]: 8: Hoare triple {194133#(<= 6 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,005 INFO L290 TraceCheckUtils]: 9: Hoare triple {194133#(<= 6 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,006 INFO L290 TraceCheckUtils]: 10: Hoare triple {194133#(<= 6 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194134#(<= (+ correct_version_~x~0 6) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,006 INFO L290 TraceCheckUtils]: 11: Hoare triple {194134#(<= (+ correct_version_~x~0 6) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194135#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {194135#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194136#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,007 INFO L290 TraceCheckUtils]: 13: Hoare triple {194136#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194137#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {194137#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194138#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {194138#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194139#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,008 INFO L290 TraceCheckUtils]: 16: Hoare triple {194139#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,008 INFO L290 TraceCheckUtils]: 17: Hoare triple {194081#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {194081#false} is VALID [2022-04-27 22:37:05,008 INFO L290 TraceCheckUtils]: 18: Hoare triple {194081#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,009 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {194081#false} {194080#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,009 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 29 [2022-04-27 22:37:05,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 0: Hoare triple {194080#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 3: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 4: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 5: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 6: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 7: Hoare triple {194080#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 8: Hoare triple {194080#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {194080#true} is VALID [2022-04-27 22:37:05,017 INFO L290 TraceCheckUtils]: 9: Hoare triple {194080#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 10: Hoare triple {194080#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 11: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 12: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 13: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 14: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 15: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 17: Hoare triple {194080#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 18: Hoare triple {194080#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L290 TraceCheckUtils]: 19: Hoare triple {194080#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,018 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {194080#true} {194081#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,019 INFO L272 TraceCheckUtils]: 0: Hoare triple {194080#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194126#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:37:05,019 INFO L290 TraceCheckUtils]: 1: Hoare triple {194126#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {194080#true} is VALID [2022-04-27 22:37:05,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {194080#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,019 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {194080#true} {194080#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,019 INFO L272 TraceCheckUtils]: 4: Hoare triple {194080#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,019 INFO L290 TraceCheckUtils]: 5: Hoare triple {194080#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,019 INFO L290 TraceCheckUtils]: 6: Hoare triple {194080#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,019 INFO L272 TraceCheckUtils]: 7: Hoare triple {194080#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,019 INFO L290 TraceCheckUtils]: 8: Hoare triple {194080#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {194127#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {194127#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194128#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,020 INFO L290 TraceCheckUtils]: 10: Hoare triple {194128#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194129#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,021 INFO L290 TraceCheckUtils]: 11: Hoare triple {194129#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194130#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,021 INFO L290 TraceCheckUtils]: 12: Hoare triple {194130#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194131#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,021 INFO L290 TraceCheckUtils]: 13: Hoare triple {194131#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194132#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {194132#(<= 5 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,022 INFO L290 TraceCheckUtils]: 15: Hoare triple {194133#(<= 6 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,022 INFO L290 TraceCheckUtils]: 16: Hoare triple {194133#(<= 6 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,023 INFO L290 TraceCheckUtils]: 17: Hoare triple {194133#(<= 6 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {194133#(<= 6 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194134#(<= (+ correct_version_~x~0 6) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,023 INFO L290 TraceCheckUtils]: 19: Hoare triple {194134#(<= (+ correct_version_~x~0 6) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194135#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,024 INFO L290 TraceCheckUtils]: 20: Hoare triple {194135#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194136#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,024 INFO L290 TraceCheckUtils]: 21: Hoare triple {194136#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194137#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,025 INFO L290 TraceCheckUtils]: 22: Hoare triple {194137#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194138#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,025 INFO L290 TraceCheckUtils]: 23: Hoare triple {194138#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194139#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,025 INFO L290 TraceCheckUtils]: 24: Hoare triple {194139#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 25: Hoare triple {194081#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {194081#false} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 26: Hoare triple {194081#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,026 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {194081#false} {194080#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 28: Hoare triple {194081#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {194081#false} is VALID [2022-04-27 22:37:05,026 INFO L272 TraceCheckUtils]: 29: Hoare triple {194081#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 30: Hoare triple {194080#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 31: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 32: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 33: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 34: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 35: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 36: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 37: Hoare triple {194080#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 38: Hoare triple {194080#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {194080#true} is VALID [2022-04-27 22:37:05,026 INFO L290 TraceCheckUtils]: 39: Hoare triple {194080#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 40: Hoare triple {194080#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 41: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 42: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 43: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 44: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 45: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 46: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 47: Hoare triple {194080#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 48: Hoare triple {194080#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 49: Hoare triple {194080#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,027 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {194080#true} {194081#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 51: Hoare triple {194081#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {194081#false} is VALID [2022-04-27 22:37:05,027 INFO L272 TraceCheckUtils]: 52: Hoare triple {194081#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {194081#false} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 53: Hoare triple {194081#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {194081#false} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 54: Hoare triple {194081#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,027 INFO L290 TraceCheckUtils]: 55: Hoare triple {194081#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,028 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-27 22:37:05,028 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:37:05,028 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [134603669] [2022-04-27 22:37:05,028 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [134603669] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:37:05,028 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [591113944] [2022-04-27 22:37:05,028 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-04-27 22:37:05,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:37:05,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:37:05,029 INFO L229 MonitoredProcess]: Starting monitored process 80 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:37:05,030 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (80)] Waiting until timeout for monitored process [2022-04-27 22:37:05,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:05,152 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 22:37:05,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:05,160 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:37:05,334 INFO L272 TraceCheckUtils]: 0: Hoare triple {194080#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {194080#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {194080#true} is VALID [2022-04-27 22:37:05,334 INFO L290 TraceCheckUtils]: 2: Hoare triple {194080#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,334 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {194080#true} {194080#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,334 INFO L272 TraceCheckUtils]: 4: Hoare triple {194080#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,334 INFO L290 TraceCheckUtils]: 5: Hoare triple {194080#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,334 INFO L290 TraceCheckUtils]: 6: Hoare triple {194080#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,334 INFO L272 TraceCheckUtils]: 7: Hoare triple {194080#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,335 INFO L290 TraceCheckUtils]: 8: Hoare triple {194080#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {194127#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,335 INFO L290 TraceCheckUtils]: 9: Hoare triple {194127#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194128#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,335 INFO L290 TraceCheckUtils]: 10: Hoare triple {194128#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194129#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,336 INFO L290 TraceCheckUtils]: 11: Hoare triple {194129#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194130#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,336 INFO L290 TraceCheckUtils]: 12: Hoare triple {194130#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194131#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,336 INFO L290 TraceCheckUtils]: 13: Hoare triple {194131#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194132#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,337 INFO L290 TraceCheckUtils]: 14: Hoare triple {194132#(<= 5 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,337 INFO L290 TraceCheckUtils]: 15: Hoare triple {194133#(<= 6 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,337 INFO L290 TraceCheckUtils]: 16: Hoare triple {194133#(<= 6 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,337 INFO L290 TraceCheckUtils]: 17: Hoare triple {194133#(<= 6 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,337 INFO L290 TraceCheckUtils]: 18: Hoare triple {194133#(<= 6 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194197#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 0))} is VALID [2022-04-27 22:37:05,338 INFO L290 TraceCheckUtils]: 19: Hoare triple {194197#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194201#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 1))} is VALID [2022-04-27 22:37:05,338 INFO L290 TraceCheckUtils]: 20: Hoare triple {194201#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 1))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194205#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 2))} is VALID [2022-04-27 22:37:05,339 INFO L290 TraceCheckUtils]: 21: Hoare triple {194205#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 2))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194209#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 3))} is VALID [2022-04-27 22:37:05,339 INFO L290 TraceCheckUtils]: 22: Hoare triple {194209#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 3))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194213#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 4))} is VALID [2022-04-27 22:37:05,339 INFO L290 TraceCheckUtils]: 23: Hoare triple {194213#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 4))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194217#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 5))} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 24: Hoare triple {194217#(and (<= 6 correct_version_~i~0) (<= correct_version_~x~0 5))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 25: Hoare triple {194081#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 26: Hoare triple {194081#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {194081#false} {194080#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 28: Hoare triple {194081#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L272 TraceCheckUtils]: 29: Hoare triple {194081#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 30: Hoare triple {194081#false} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 31: Hoare triple {194081#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 32: Hoare triple {194081#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 33: Hoare triple {194081#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 34: Hoare triple {194081#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 35: Hoare triple {194081#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 36: Hoare triple {194081#false} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 37: Hoare triple {194081#false} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,340 INFO L290 TraceCheckUtils]: 38: Hoare triple {194081#false} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 39: Hoare triple {194081#false} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 40: Hoare triple {194081#false} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 41: Hoare triple {194081#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 42: Hoare triple {194081#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 43: Hoare triple {194081#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 44: Hoare triple {194081#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 45: Hoare triple {194081#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 46: Hoare triple {194081#false} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 47: Hoare triple {194081#false} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 48: Hoare triple {194081#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 49: Hoare triple {194081#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {194081#false} {194081#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 51: Hoare triple {194081#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L272 TraceCheckUtils]: 52: Hoare triple {194081#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 53: Hoare triple {194081#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {194081#false} is VALID [2022-04-27 22:37:05,341 INFO L290 TraceCheckUtils]: 54: Hoare triple {194081#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,342 INFO L290 TraceCheckUtils]: 55: Hoare triple {194081#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,342 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-27 22:37:05,342 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:37:05,483 INFO L290 TraceCheckUtils]: 55: Hoare triple {194081#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,483 INFO L290 TraceCheckUtils]: 54: Hoare triple {194081#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,483 INFO L290 TraceCheckUtils]: 53: Hoare triple {194081#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {194081#false} is VALID [2022-04-27 22:37:05,483 INFO L272 TraceCheckUtils]: 52: Hoare triple {194081#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {194081#false} is VALID [2022-04-27 22:37:05,483 INFO L290 TraceCheckUtils]: 51: Hoare triple {194081#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {194081#false} is VALID [2022-04-27 22:37:05,483 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {194080#true} {194081#false} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,483 INFO L290 TraceCheckUtils]: 49: Hoare triple {194080#true} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,483 INFO L290 TraceCheckUtils]: 48: Hoare triple {194080#true} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 47: Hoare triple {194080#true} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 46: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 45: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 44: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 43: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 42: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 41: Hoare triple {194080#true} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 40: Hoare triple {194080#true} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 39: Hoare triple {194080#true} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 38: Hoare triple {194080#true} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 37: Hoare triple {194080#true} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 36: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 35: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,484 INFO L290 TraceCheckUtils]: 34: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 33: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 32: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 31: Hoare triple {194080#true} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {194080#true} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 30: Hoare triple {194080#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {194080#true} is VALID [2022-04-27 22:37:05,485 INFO L272 TraceCheckUtils]: 29: Hoare triple {194081#false} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 28: Hoare triple {194081#false} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {194081#false} is VALID [2022-04-27 22:37:05,485 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {194081#false} {194080#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {194081#false} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 26: Hoare triple {194081#false} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 25: Hoare triple {194081#false} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {194081#false} is VALID [2022-04-27 22:37:05,485 INFO L290 TraceCheckUtils]: 24: Hoare triple {194139#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {194081#false} is VALID [2022-04-27 22:37:05,486 INFO L290 TraceCheckUtils]: 23: Hoare triple {194138#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194139#(<= (+ correct_version_~x~0 1) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,486 INFO L290 TraceCheckUtils]: 22: Hoare triple {194137#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194138#(<= (+ correct_version_~x~0 2) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,487 INFO L290 TraceCheckUtils]: 21: Hoare triple {194136#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194137#(<= (+ correct_version_~x~0 3) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,487 INFO L290 TraceCheckUtils]: 20: Hoare triple {194135#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194136#(<= (+ correct_version_~x~0 4) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,487 INFO L290 TraceCheckUtils]: 19: Hoare triple {194134#(<= (+ correct_version_~x~0 6) correct_version_~i~0)} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194135#(<= (+ correct_version_~x~0 5) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,488 INFO L290 TraceCheckUtils]: 18: Hoare triple {194133#(<= 6 correct_version_~i~0)} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {194134#(<= (+ correct_version_~x~0 6) correct_version_~i~0)} is VALID [2022-04-27 22:37:05,488 INFO L290 TraceCheckUtils]: 17: Hoare triple {194133#(<= 6 correct_version_~i~0)} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,488 INFO L290 TraceCheckUtils]: 16: Hoare triple {194133#(<= 6 correct_version_~i~0)} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,488 INFO L290 TraceCheckUtils]: 15: Hoare triple {194133#(<= 6 correct_version_~i~0)} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,488 INFO L290 TraceCheckUtils]: 14: Hoare triple {194132#(<= 5 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194133#(<= 6 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {194131#(<= 4 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194132#(<= 5 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,489 INFO L290 TraceCheckUtils]: 12: Hoare triple {194130#(<= 3 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194131#(<= 4 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,489 INFO L290 TraceCheckUtils]: 11: Hoare triple {194129#(<= 2 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194130#(<= 3 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,490 INFO L290 TraceCheckUtils]: 10: Hoare triple {194128#(<= 1 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194129#(<= 2 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,490 INFO L290 TraceCheckUtils]: 9: Hoare triple {194127#(<= 0 correct_version_~i~0)} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {194128#(<= 1 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,490 INFO L290 TraceCheckUtils]: 8: Hoare triple {194080#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {194127#(<= 0 correct_version_~i~0)} is VALID [2022-04-27 22:37:05,490 INFO L272 TraceCheckUtils]: 7: Hoare triple {194080#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,490 INFO L290 TraceCheckUtils]: 6: Hoare triple {194080#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,491 INFO L290 TraceCheckUtils]: 5: Hoare triple {194080#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {194080#true} is VALID [2022-04-27 22:37:05,491 INFO L272 TraceCheckUtils]: 4: Hoare triple {194080#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {194080#true} {194080#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,491 INFO L290 TraceCheckUtils]: 2: Hoare triple {194080#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,491 INFO L290 TraceCheckUtils]: 1: Hoare triple {194080#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {194080#true} is VALID [2022-04-27 22:37:05,491 INFO L272 TraceCheckUtils]: 0: Hoare triple {194080#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {194080#true} is VALID [2022-04-27 22:37:05,491 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-27 22:37:05,491 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [591113944] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:37:05,491 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:37:05,491 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15, 15] total 22 [2022-04-27 22:37:05,491 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [675276058] [2022-04-27 22:37:05,491 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:37:05,492 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.5454545454545454) internal successors, (56), 21 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 56 [2022-04-27 22:37:05,492 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:37:05,492 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 2.5454545454545454) internal successors, (56), 21 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:37:05,517 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:37:05,517 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 22:37:05,517 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:37:05,517 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 22:37:05,517 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=155, Invalid=307, Unknown=0, NotChecked=0, Total=462 [2022-04-27 22:37:05,517 INFO L87 Difference]: Start difference. First operand 926 states and 1037 transitions. Second operand has 22 states, 22 states have (on average 2.5454545454545454) internal successors, (56), 21 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:37:14,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:14,789 INFO L93 Difference]: Finished difference Result 1404 states and 1549 transitions. [2022-04-27 22:37:14,789 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-04-27 22:37:14,789 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.5454545454545454) internal successors, (56), 21 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 56 [2022-04-27 22:37:14,789 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:37:14,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.5454545454545454) internal successors, (56), 21 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:37:14,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 126 transitions. [2022-04-27 22:37:14,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.5454545454545454) internal successors, (56), 21 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:37:14,791 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 126 transitions. [2022-04-27 22:37:14,791 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 31 states and 126 transitions. [2022-04-27 22:37:14,884 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-27 22:37:14,935 INFO L225 Difference]: With dead ends: 1404 [2022-04-27 22:37:14,935 INFO L226 Difference]: Without dead ends: 925 [2022-04-27 22:37:14,941 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 111 SyntacticMatches, 1 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 576 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=764, Invalid=1686, Unknown=0, NotChecked=0, Total=2450 [2022-04-27 22:37:14,941 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 88 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 387 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 90 SdHoareTripleChecker+Valid, 84 SdHoareTripleChecker+Invalid, 437 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 387 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:37:14,941 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [90 Valid, 84 Invalid, 437 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 387 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:37:14,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 925 states. [2022-04-27 22:37:24,834 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 925 to 917. [2022-04-27 22:37:24,834 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:37:24,835 INFO L82 GeneralOperation]: Start isEquivalent. First operand 925 states. Second operand has 917 states, 803 states have (on average 1.13200498132005) internal successors, (909), 873 states have internal predecessors, (909), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:24,836 INFO L74 IsIncluded]: Start isIncluded. First operand 925 states. Second operand has 917 states, 803 states have (on average 1.13200498132005) internal successors, (909), 873 states have internal predecessors, (909), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:24,836 INFO L87 Difference]: Start difference. First operand 925 states. Second operand has 917 states, 803 states have (on average 1.13200498132005) internal successors, (909), 873 states have internal predecessors, (909), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:24,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:24,867 INFO L93 Difference]: Finished difference Result 925 states and 1032 transitions. [2022-04-27 22:37:24,867 INFO L276 IsEmpty]: Start isEmpty. Operand 925 states and 1032 transitions. [2022-04-27 22:37:24,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:24,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:24,873 INFO L74 IsIncluded]: Start isIncluded. First operand has 917 states, 803 states have (on average 1.13200498132005) internal successors, (909), 873 states have internal predecessors, (909), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) Second operand 925 states. [2022-04-27 22:37:24,874 INFO L87 Difference]: Start difference. First operand has 917 states, 803 states have (on average 1.13200498132005) internal successors, (909), 873 states have internal predecessors, (909), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) Second operand 925 states. [2022-04-27 22:37:24,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:24,905 INFO L93 Difference]: Finished difference Result 925 states and 1032 transitions. [2022-04-27 22:37:24,905 INFO L276 IsEmpty]: Start isEmpty. Operand 925 states and 1032 transitions. [2022-04-27 22:37:24,910 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:24,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:24,910 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:37:24,910 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:37:24,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 917 states, 803 states have (on average 1.13200498132005) internal successors, (909), 873 states have internal predecessors, (909), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:24,950 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 917 states to 917 states and 1022 transitions. [2022-04-27 22:37:24,950 INFO L78 Accepts]: Start accepts. Automaton has 917 states and 1022 transitions. Word has length 56 [2022-04-27 22:37:24,950 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:37:24,950 INFO L495 AbstractCegarLoop]: Abstraction has 917 states and 1022 transitions. [2022-04-27 22:37:24,950 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 2.5454545454545454) internal successors, (56), 21 states have internal predecessors, (56), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:37:24,950 INFO L276 IsEmpty]: Start isEmpty. Operand 917 states and 1022 transitions. [2022-04-27 22:37:24,956 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 22:37:24,956 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:37:24,956 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:37:24,973 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (80)] Forceful destruction successful, exit code 0 [2022-04-27 22:37:25,168 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 80 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable88 [2022-04-27 22:37:25,168 INFO L420 AbstractCegarLoop]: === Iteration 90 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:37:25,168 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:37:25,168 INFO L85 PathProgramCache]: Analyzing trace with hash 1442036278, now seen corresponding path program 80 times [2022-04-27 22:37:25,168 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:37:25,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [351965863] [2022-04-27 22:37:25,168 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:37:25,169 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:37:25,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:25,195 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:37:25,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:25,196 INFO L290 TraceCheckUtils]: 0: Hoare triple {199849#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {199803#true} is VALID [2022-04-27 22:37:25,197 INFO L290 TraceCheckUtils]: 1: Hoare triple {199803#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,197 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {199803#true} {199803#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,197 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:37:25,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:25,201 INFO L290 TraceCheckUtils]: 0: Hoare triple {199803#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 2: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 3: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 4: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 5: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 6: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 7: Hoare triple {199803#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 8: Hoare triple {199803#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {199803#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 10: Hoare triple {199803#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 12: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 13: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 14: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 15: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,202 INFO L290 TraceCheckUtils]: 16: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,203 INFO L290 TraceCheckUtils]: 17: Hoare triple {199803#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,203 INFO L290 TraceCheckUtils]: 18: Hoare triple {199803#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {199803#true} is VALID [2022-04-27 22:37:25,203 INFO L290 TraceCheckUtils]: 19: Hoare triple {199803#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,203 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {199803#true} {199803#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,203 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 30 [2022-04-27 22:37:25,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:25,267 INFO L290 TraceCheckUtils]: 0: Hoare triple {199803#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {199850#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:37:25,267 INFO L290 TraceCheckUtils]: 1: Hoare triple {199850#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199851#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:37:25,268 INFO L290 TraceCheckUtils]: 2: Hoare triple {199851#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199852#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:37:25,268 INFO L290 TraceCheckUtils]: 3: Hoare triple {199852#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199853#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:37:25,268 INFO L290 TraceCheckUtils]: 4: Hoare triple {199853#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199854#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:37:25,269 INFO L290 TraceCheckUtils]: 5: Hoare triple {199854#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199855#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:37:25,269 INFO L290 TraceCheckUtils]: 6: Hoare triple {199855#(<= 5 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,269 INFO L290 TraceCheckUtils]: 7: Hoare triple {199856#(<= 6 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,269 INFO L290 TraceCheckUtils]: 8: Hoare triple {199856#(<= 6 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,270 INFO L290 TraceCheckUtils]: 9: Hoare triple {199856#(<= 6 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,270 INFO L290 TraceCheckUtils]: 10: Hoare triple {199856#(<= 6 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199857#(<= (+ 6 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,270 INFO L290 TraceCheckUtils]: 11: Hoare triple {199857#(<= (+ 6 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199858#(<= (+ 5 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,271 INFO L290 TraceCheckUtils]: 12: Hoare triple {199858#(<= (+ 5 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199859#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:37:25,271 INFO L290 TraceCheckUtils]: 13: Hoare triple {199859#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199860#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {199860#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199861#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,272 INFO L290 TraceCheckUtils]: 15: Hoare triple {199861#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199862#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,272 INFO L290 TraceCheckUtils]: 16: Hoare triple {199862#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,272 INFO L290 TraceCheckUtils]: 17: Hoare triple {199804#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {199804#false} is VALID [2022-04-27 22:37:25,272 INFO L290 TraceCheckUtils]: 18: Hoare triple {199804#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,272 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {199804#false} {199803#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {199804#false} is VALID [2022-04-27 22:37:25,272 INFO L272 TraceCheckUtils]: 0: Hoare triple {199803#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199849#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 1: Hoare triple {199849#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 2: Hoare triple {199803#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {199803#true} {199803#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L272 TraceCheckUtils]: 4: Hoare triple {199803#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 5: Hoare triple {199803#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 6: Hoare triple {199803#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L272 TraceCheckUtils]: 7: Hoare triple {199803#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 8: Hoare triple {199803#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 10: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 11: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 12: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 13: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,273 INFO L290 TraceCheckUtils]: 14: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 15: Hoare triple {199803#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 16: Hoare triple {199803#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 17: Hoare triple {199803#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 18: Hoare triple {199803#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 19: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 20: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 21: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 22: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 23: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 24: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 25: Hoare triple {199803#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 26: Hoare triple {199803#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 27: Hoare triple {199803#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {199803#true} {199803#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L290 TraceCheckUtils]: 29: Hoare triple {199803#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {199803#true} is VALID [2022-04-27 22:37:25,274 INFO L272 TraceCheckUtils]: 30: Hoare triple {199803#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,275 INFO L290 TraceCheckUtils]: 31: Hoare triple {199803#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {199850#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:37:25,275 INFO L290 TraceCheckUtils]: 32: Hoare triple {199850#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199851#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:37:25,275 INFO L290 TraceCheckUtils]: 33: Hoare triple {199851#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199852#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:37:25,276 INFO L290 TraceCheckUtils]: 34: Hoare triple {199852#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199853#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:37:25,276 INFO L290 TraceCheckUtils]: 35: Hoare triple {199853#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199854#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:37:25,277 INFO L290 TraceCheckUtils]: 36: Hoare triple {199854#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199855#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:37:25,277 INFO L290 TraceCheckUtils]: 37: Hoare triple {199855#(<= 5 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,277 INFO L290 TraceCheckUtils]: 38: Hoare triple {199856#(<= 6 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {199856#(<= 6 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,277 INFO L290 TraceCheckUtils]: 40: Hoare triple {199856#(<= 6 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,278 INFO L290 TraceCheckUtils]: 41: Hoare triple {199856#(<= 6 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199857#(<= (+ 6 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,278 INFO L290 TraceCheckUtils]: 42: Hoare triple {199857#(<= (+ 6 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199858#(<= (+ 5 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,278 INFO L290 TraceCheckUtils]: 43: Hoare triple {199858#(<= (+ 5 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199859#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:37:25,279 INFO L290 TraceCheckUtils]: 44: Hoare triple {199859#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199860#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,279 INFO L290 TraceCheckUtils]: 45: Hoare triple {199860#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199861#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,279 INFO L290 TraceCheckUtils]: 46: Hoare triple {199861#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199862#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,280 INFO L290 TraceCheckUtils]: 47: Hoare triple {199862#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L290 TraceCheckUtils]: 48: Hoare triple {199804#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L290 TraceCheckUtils]: 49: Hoare triple {199804#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {199804#false} {199803#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L290 TraceCheckUtils]: 51: Hoare triple {199804#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L272 TraceCheckUtils]: 52: Hoare triple {199804#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L290 TraceCheckUtils]: 53: Hoare triple {199804#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L290 TraceCheckUtils]: 54: Hoare triple {199804#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L290 TraceCheckUtils]: 55: Hoare triple {199804#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,280 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-27 22:37:25,280 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:37:25,280 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [351965863] [2022-04-27 22:37:25,281 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [351965863] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:37:25,281 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1117971673] [2022-04-27 22:37:25,281 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 22:37:25,281 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:37:25,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:37:25,282 INFO L229 MonitoredProcess]: Starting monitored process 81 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:37:25,282 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (81)] Waiting until timeout for monitored process [2022-04-27 22:37:25,415 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 22:37:25,415 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:37:25,416 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 22:37:25,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:25,424 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:37:25,700 INFO L272 TraceCheckUtils]: 0: Hoare triple {199803#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,700 INFO L290 TraceCheckUtils]: 1: Hoare triple {199803#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 2: Hoare triple {199803#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {199803#true} {199803#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L272 TraceCheckUtils]: 4: Hoare triple {199803#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 5: Hoare triple {199803#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 6: Hoare triple {199803#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L272 TraceCheckUtils]: 7: Hoare triple {199803#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {199803#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 9: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 10: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 11: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 12: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 13: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 14: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,701 INFO L290 TraceCheckUtils]: 15: Hoare triple {199803#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 16: Hoare triple {199803#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 17: Hoare triple {199803#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 18: Hoare triple {199803#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 19: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 20: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 21: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 22: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 23: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 24: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 25: Hoare triple {199803#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 26: Hoare triple {199803#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 27: Hoare triple {199803#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {199803#true} {199803#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L290 TraceCheckUtils]: 29: Hoare triple {199803#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {199803#true} is VALID [2022-04-27 22:37:25,702 INFO L272 TraceCheckUtils]: 30: Hoare triple {199803#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,703 INFO L290 TraceCheckUtils]: 31: Hoare triple {199803#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {199850#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:37:25,703 INFO L290 TraceCheckUtils]: 32: Hoare triple {199850#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199851#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:37:25,704 INFO L290 TraceCheckUtils]: 33: Hoare triple {199851#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199852#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:37:25,704 INFO L290 TraceCheckUtils]: 34: Hoare triple {199852#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199853#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:37:25,705 INFO L290 TraceCheckUtils]: 35: Hoare triple {199853#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199854#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:37:25,705 INFO L290 TraceCheckUtils]: 36: Hoare triple {199854#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199855#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:37:25,706 INFO L290 TraceCheckUtils]: 37: Hoare triple {199855#(<= 5 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,706 INFO L290 TraceCheckUtils]: 38: Hoare triple {199856#(<= 6 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,706 INFO L290 TraceCheckUtils]: 39: Hoare triple {199856#(<= 6 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,706 INFO L290 TraceCheckUtils]: 40: Hoare triple {199856#(<= 6 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,707 INFO L290 TraceCheckUtils]: 41: Hoare triple {199856#(<= 6 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199989#(and (<= student_version_~x~1 0) (<= 6 student_version_~i~1))} is VALID [2022-04-27 22:37:25,707 INFO L290 TraceCheckUtils]: 42: Hoare triple {199989#(and (<= student_version_~x~1 0) (<= 6 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199993#(and (<= student_version_~x~1 1) (<= 6 student_version_~i~1))} is VALID [2022-04-27 22:37:25,708 INFO L290 TraceCheckUtils]: 43: Hoare triple {199993#(and (<= student_version_~x~1 1) (<= 6 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199997#(and (<= student_version_~x~1 2) (<= 6 student_version_~i~1))} is VALID [2022-04-27 22:37:25,708 INFO L290 TraceCheckUtils]: 44: Hoare triple {199997#(and (<= student_version_~x~1 2) (<= 6 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {200001#(and (<= student_version_~x~1 3) (<= 6 student_version_~i~1))} is VALID [2022-04-27 22:37:25,709 INFO L290 TraceCheckUtils]: 45: Hoare triple {200001#(and (<= student_version_~x~1 3) (<= 6 student_version_~i~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {200005#(and (<= 6 student_version_~i~1) (<= student_version_~x~1 4))} is VALID [2022-04-27 22:37:25,709 INFO L290 TraceCheckUtils]: 46: Hoare triple {200005#(and (<= 6 student_version_~i~1) (<= student_version_~x~1 4))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {200009#(and (<= student_version_~x~1 5) (<= 6 student_version_~i~1))} is VALID [2022-04-27 22:37:25,710 INFO L290 TraceCheckUtils]: 47: Hoare triple {200009#(and (<= student_version_~x~1 5) (<= 6 student_version_~i~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L290 TraceCheckUtils]: 48: Hoare triple {199804#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L290 TraceCheckUtils]: 49: Hoare triple {199804#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {199804#false} {199803#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L290 TraceCheckUtils]: 51: Hoare triple {199804#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L272 TraceCheckUtils]: 52: Hoare triple {199804#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L290 TraceCheckUtils]: 53: Hoare triple {199804#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L290 TraceCheckUtils]: 54: Hoare triple {199804#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L290 TraceCheckUtils]: 55: Hoare triple {199804#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,710 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-27 22:37:25,710 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:37:25,942 INFO L290 TraceCheckUtils]: 55: Hoare triple {199804#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,942 INFO L290 TraceCheckUtils]: 54: Hoare triple {199804#false} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,942 INFO L290 TraceCheckUtils]: 53: Hoare triple {199804#false} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {199804#false} is VALID [2022-04-27 22:37:25,942 INFO L272 TraceCheckUtils]: 52: Hoare triple {199804#false} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {199804#false} is VALID [2022-04-27 22:37:25,942 INFO L290 TraceCheckUtils]: 51: Hoare triple {199804#false} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {199804#false} is VALID [2022-04-27 22:37:25,942 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {199804#false} {199803#true} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {199804#false} is VALID [2022-04-27 22:37:25,942 INFO L290 TraceCheckUtils]: 49: Hoare triple {199804#false} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,942 INFO L290 TraceCheckUtils]: 48: Hoare triple {199804#false} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {199804#false} is VALID [2022-04-27 22:37:25,943 INFO L290 TraceCheckUtils]: 47: Hoare triple {199862#(<= (+ student_version_~x~1 1) student_version_~i~1)} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {199804#false} is VALID [2022-04-27 22:37:25,943 INFO L290 TraceCheckUtils]: 46: Hoare triple {199861#(<= (+ 2 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199862#(<= (+ student_version_~x~1 1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,944 INFO L290 TraceCheckUtils]: 45: Hoare triple {199860#(<= (+ 3 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199861#(<= (+ 2 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,944 INFO L290 TraceCheckUtils]: 44: Hoare triple {199859#(<= (+ student_version_~x~1 4) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199860#(<= (+ 3 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,945 INFO L290 TraceCheckUtils]: 43: Hoare triple {199858#(<= (+ 5 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199859#(<= (+ student_version_~x~1 4) student_version_~i~1)} is VALID [2022-04-27 22:37:25,945 INFO L290 TraceCheckUtils]: 42: Hoare triple {199857#(<= (+ 6 student_version_~x~1) student_version_~i~1)} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199858#(<= (+ 5 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,946 INFO L290 TraceCheckUtils]: 41: Hoare triple {199856#(<= 6 student_version_~i~1)} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {199857#(<= (+ 6 student_version_~x~1) student_version_~i~1)} is VALID [2022-04-27 22:37:25,946 INFO L290 TraceCheckUtils]: 40: Hoare triple {199856#(<= 6 student_version_~i~1)} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,946 INFO L290 TraceCheckUtils]: 39: Hoare triple {199856#(<= 6 student_version_~i~1)} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,946 INFO L290 TraceCheckUtils]: 38: Hoare triple {199856#(<= 6 student_version_~i~1)} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,947 INFO L290 TraceCheckUtils]: 37: Hoare triple {199855#(<= 5 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199856#(<= 6 student_version_~i~1)} is VALID [2022-04-27 22:37:25,947 INFO L290 TraceCheckUtils]: 36: Hoare triple {199854#(<= 4 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199855#(<= 5 student_version_~i~1)} is VALID [2022-04-27 22:37:25,948 INFO L290 TraceCheckUtils]: 35: Hoare triple {199853#(<= 3 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199854#(<= 4 student_version_~i~1)} is VALID [2022-04-27 22:37:25,948 INFO L290 TraceCheckUtils]: 34: Hoare triple {199852#(<= 2 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199853#(<= 3 student_version_~i~1)} is VALID [2022-04-27 22:37:25,949 INFO L290 TraceCheckUtils]: 33: Hoare triple {199851#(<= 1 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199852#(<= 2 student_version_~i~1)} is VALID [2022-04-27 22:37:25,949 INFO L290 TraceCheckUtils]: 32: Hoare triple {199850#(<= 0 student_version_~i~1)} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {199851#(<= 1 student_version_~i~1)} is VALID [2022-04-27 22:37:25,949 INFO L290 TraceCheckUtils]: 31: Hoare triple {199803#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {199850#(<= 0 student_version_~i~1)} is VALID [2022-04-27 22:37:25,950 INFO L272 TraceCheckUtils]: 30: Hoare triple {199803#true} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 29: Hoare triple {199803#true} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {199803#true} {199803#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 27: Hoare triple {199803#true} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 26: Hoare triple {199803#true} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 25: Hoare triple {199803#true} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 24: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 23: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 22: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 21: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 20: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {199803#true} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 18: Hoare triple {199803#true} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 17: Hoare triple {199803#true} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,950 INFO L290 TraceCheckUtils]: 16: Hoare triple {199803#true} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 15: Hoare triple {199803#true} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 14: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 13: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 12: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 11: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 10: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 9: Hoare triple {199803#true} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 8: Hoare triple {199803#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L272 TraceCheckUtils]: 7: Hoare triple {199803#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 6: Hoare triple {199803#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 5: Hoare triple {199803#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L272 TraceCheckUtils]: 4: Hoare triple {199803#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {199803#true} {199803#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,951 INFO L290 TraceCheckUtils]: 2: Hoare triple {199803#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,952 INFO L290 TraceCheckUtils]: 1: Hoare triple {199803#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {199803#true} is VALID [2022-04-27 22:37:25,952 INFO L272 TraceCheckUtils]: 0: Hoare triple {199803#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {199803#true} is VALID [2022-04-27 22:37:25,952 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 21 proven. 15 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-27 22:37:25,952 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1117971673] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:37:25,952 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:37:25,952 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15, 15] total 22 [2022-04-27 22:37:25,952 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [123203037] [2022-04-27 22:37:25,952 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:37:25,952 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 56 [2022-04-27 22:37:25,952 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:37:25,953 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:37:25,986 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-27 22:37:25,986 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 22:37:25,986 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:37:25,986 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 22:37:25,986 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=155, Invalid=307, Unknown=0, NotChecked=0, Total=462 [2022-04-27 22:37:25,986 INFO L87 Difference]: Start difference. First operand 917 states and 1022 transitions. Second operand has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:37:33,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:33,841 INFO L93 Difference]: Finished difference Result 967 states and 1082 transitions. [2022-04-27 22:37:33,842 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-04-27 22:37:33,842 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 56 [2022-04-27 22:37:33,842 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:37:33,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:37:33,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 113 transitions. [2022-04-27 22:37:33,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:37:33,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 113 transitions. [2022-04-27 22:37:33,843 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 31 states and 113 transitions. [2022-04-27 22:37:33,895 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-27 22:37:33,938 INFO L225 Difference]: With dead ends: 967 [2022-04-27 22:37:33,938 INFO L226 Difference]: Without dead ends: 928 [2022-04-27 22:37:33,943 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 111 SyntacticMatches, 1 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 576 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=764, Invalid=1686, Unknown=0, NotChecked=0, Total=2450 [2022-04-27 22:37:33,944 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 94 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 444 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 96 SdHoareTripleChecker+Valid, 84 SdHoareTripleChecker+Invalid, 493 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 444 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 22:37:33,944 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [96 Valid, 84 Invalid, 493 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 444 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 22:37:33,944 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 928 states. [2022-04-27 22:37:40,920 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 928 to 928. [2022-04-27 22:37:40,920 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:37:40,921 INFO L82 GeneralOperation]: Start isEquivalent. First operand 928 states. Second operand has 928 states, 814 states have (on average 1.1302211302211302) internal successors, (920), 884 states have internal predecessors, (920), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:40,921 INFO L74 IsIncluded]: Start isIncluded. First operand 928 states. Second operand has 928 states, 814 states have (on average 1.1302211302211302) internal successors, (920), 884 states have internal predecessors, (920), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:40,922 INFO L87 Difference]: Start difference. First operand 928 states. Second operand has 928 states, 814 states have (on average 1.1302211302211302) internal successors, (920), 884 states have internal predecessors, (920), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:40,977 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:40,977 INFO L93 Difference]: Finished difference Result 928 states and 1033 transitions. [2022-04-27 22:37:40,977 INFO L276 IsEmpty]: Start isEmpty. Operand 928 states and 1033 transitions. [2022-04-27 22:37:40,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:40,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:40,983 INFO L74 IsIncluded]: Start isIncluded. First operand has 928 states, 814 states have (on average 1.1302211302211302) internal successors, (920), 884 states have internal predecessors, (920), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) Second operand 928 states. [2022-04-27 22:37:40,983 INFO L87 Difference]: Start difference. First operand has 928 states, 814 states have (on average 1.1302211302211302) internal successors, (920), 884 states have internal predecessors, (920), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) Second operand 928 states. [2022-04-27 22:37:41,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:37:41,015 INFO L93 Difference]: Finished difference Result 928 states and 1033 transitions. [2022-04-27 22:37:41,015 INFO L276 IsEmpty]: Start isEmpty. Operand 928 states and 1033 transitions. [2022-04-27 22:37:41,020 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:37:41,020 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:37:41,020 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:37:41,020 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:37:41,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 928 states, 814 states have (on average 1.1302211302211302) internal successors, (920), 884 states have internal predecessors, (920), 40 states have call successors, (40), 5 states have call predecessors, (40), 73 states have return successors, (73), 38 states have call predecessors, (73), 38 states have call successors, (73) [2022-04-27 22:37:41,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 928 states to 928 states and 1033 transitions. [2022-04-27 22:37:41,061 INFO L78 Accepts]: Start accepts. Automaton has 928 states and 1033 transitions. Word has length 56 [2022-04-27 22:37:41,061 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:37:41,061 INFO L495 AbstractCegarLoop]: Abstraction has 928 states and 1033 transitions. [2022-04-27 22:37:41,061 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 22:37:41,061 INFO L276 IsEmpty]: Start isEmpty. Operand 928 states and 1033 transitions. [2022-04-27 22:37:41,067 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-27 22:37:41,067 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:37:41,067 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 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-27 22:37:41,083 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (81)] Forceful destruction successful, exit code 0 [2022-04-27 22:37:41,278 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 81 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable89 [2022-04-27 22:37:41,279 INFO L420 AbstractCegarLoop]: === Iteration 91 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:37:41,279 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:37:41,279 INFO L85 PathProgramCache]: Analyzing trace with hash 1590562, now seen corresponding path program 81 times [2022-04-27 22:37:41,279 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:37:41,279 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2010978850] [2022-04-27 22:37:41,279 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:37:41,279 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:37:41,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:41,354 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:37:41,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:41,356 INFO L290 TraceCheckUtils]: 0: Hoare triple {204972#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {204919#true} is VALID [2022-04-27 22:37:41,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {204919#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:41,356 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {204919#true} {204919#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:41,356 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:37:41,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:41,530 INFO L290 TraceCheckUtils]: 0: Hoare triple {204919#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,531 INFO L290 TraceCheckUtils]: 3: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:37:41,531 INFO L290 TraceCheckUtils]: 4: Hoare triple {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:37:41,531 INFO L290 TraceCheckUtils]: 5: Hoare triple {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:37:41,532 INFO L290 TraceCheckUtils]: 6: Hoare triple {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:37:41,532 INFO L290 TraceCheckUtils]: 7: Hoare triple {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,532 INFO L290 TraceCheckUtils]: 8: Hoare triple {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,533 INFO L290 TraceCheckUtils]: 9: Hoare triple {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:37:41,533 INFO L290 TraceCheckUtils]: 10: Hoare triple {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:37:41,533 INFO L290 TraceCheckUtils]: 11: Hoare triple {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,534 INFO L290 TraceCheckUtils]: 12: Hoare triple {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,534 INFO L290 TraceCheckUtils]: 13: Hoare triple {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:41,534 INFO L290 TraceCheckUtils]: 14: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:41,535 INFO L290 TraceCheckUtils]: 15: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {204985#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 11) (<= 11 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:37:41,535 INFO L290 TraceCheckUtils]: 16: Hoare triple {204985#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 11) (<= 11 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:41,535 INFO L290 TraceCheckUtils]: 17: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:41,536 INFO L290 TraceCheckUtils]: 18: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:41,536 INFO L290 TraceCheckUtils]: 19: Hoare triple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:41,536 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} {204919#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {204945#(and (<= |main_#t~ret8| 11) (<= 11 |main_#t~ret8|))} is VALID [2022-04-27 22:37:41,536 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 30 [2022-04-27 22:37:41,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:41,799 INFO L290 TraceCheckUtils]: 0: Hoare triple {204919#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:41,799 INFO L290 TraceCheckUtils]: 1: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:41,799 INFO L290 TraceCheckUtils]: 2: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:41,800 INFO L290 TraceCheckUtils]: 3: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:37:41,800 INFO L290 TraceCheckUtils]: 4: Hoare triple {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:37:41,800 INFO L290 TraceCheckUtils]: 5: Hoare triple {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:37:41,801 INFO L290 TraceCheckUtils]: 6: Hoare triple {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:37:41,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:37:41,801 INFO L290 TraceCheckUtils]: 8: Hoare triple {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:37:41,802 INFO L290 TraceCheckUtils]: 9: Hoare triple {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:37:41,802 INFO L290 TraceCheckUtils]: 10: Hoare triple {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:37:41,802 INFO L290 TraceCheckUtils]: 11: Hoare triple {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:37:41,803 INFO L290 TraceCheckUtils]: 12: Hoare triple {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:37:41,803 INFO L290 TraceCheckUtils]: 13: Hoare triple {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:41,803 INFO L290 TraceCheckUtils]: 14: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:41,804 INFO L290 TraceCheckUtils]: 15: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205000#(and (<= 11 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 11))} is VALID [2022-04-27 22:37:41,804 INFO L290 TraceCheckUtils]: 16: Hoare triple {205000#(and (<= 11 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 11))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:41,804 INFO L290 TraceCheckUtils]: 17: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:41,804 INFO L290 TraceCheckUtils]: 18: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:41,805 INFO L290 TraceCheckUtils]: 19: Hoare triple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:41,805 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {204968#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:37:41,806 INFO L272 TraceCheckUtils]: 0: Hoare triple {204919#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204972#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:37:41,806 INFO L290 TraceCheckUtils]: 1: Hoare triple {204972#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {204919#true} is VALID [2022-04-27 22:37:41,806 INFO L290 TraceCheckUtils]: 2: Hoare triple {204919#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:41,806 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {204919#true} {204919#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:41,806 INFO L272 TraceCheckUtils]: 4: Hoare triple {204919#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:41,806 INFO L290 TraceCheckUtils]: 5: Hoare triple {204919#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:41,806 INFO L290 TraceCheckUtils]: 6: Hoare triple {204919#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:41,806 INFO L272 TraceCheckUtils]: 7: Hoare triple {204919#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:41,806 INFO L290 TraceCheckUtils]: 8: Hoare triple {204919#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,807 INFO L290 TraceCheckUtils]: 9: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,807 INFO L290 TraceCheckUtils]: 10: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,807 INFO L290 TraceCheckUtils]: 11: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:37:41,808 INFO L290 TraceCheckUtils]: 12: Hoare triple {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:37:41,808 INFO L290 TraceCheckUtils]: 13: Hoare triple {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:37:41,808 INFO L290 TraceCheckUtils]: 14: Hoare triple {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:37:41,809 INFO L290 TraceCheckUtils]: 15: Hoare triple {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,809 INFO L290 TraceCheckUtils]: 16: Hoare triple {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,809 INFO L290 TraceCheckUtils]: 17: Hoare triple {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:37:41,810 INFO L290 TraceCheckUtils]: 18: Hoare triple {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:37:41,810 INFO L290 TraceCheckUtils]: 19: Hoare triple {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,810 INFO L290 TraceCheckUtils]: 20: Hoare triple {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:37:41,811 INFO L290 TraceCheckUtils]: 21: Hoare triple {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:41,811 INFO L290 TraceCheckUtils]: 22: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:41,811 INFO L290 TraceCheckUtils]: 23: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {204985#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 11) (<= 11 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:37:41,812 INFO L290 TraceCheckUtils]: 24: Hoare triple {204985#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 11) (<= 11 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:41,812 INFO L290 TraceCheckUtils]: 25: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:41,812 INFO L290 TraceCheckUtils]: 26: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:41,812 INFO L290 TraceCheckUtils]: 27: Hoare triple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:41,813 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} {204919#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {204945#(and (<= |main_#t~ret8| 11) (<= 11 |main_#t~ret8|))} is VALID [2022-04-27 22:37:41,813 INFO L290 TraceCheckUtils]: 29: Hoare triple {204945#(and (<= |main_#t~ret8| 11) (<= 11 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} is VALID [2022-04-27 22:37:41,813 INFO L272 TraceCheckUtils]: 30: Hoare triple {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:41,813 INFO L290 TraceCheckUtils]: 31: Hoare triple {204919#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:41,814 INFO L290 TraceCheckUtils]: 32: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:41,814 INFO L290 TraceCheckUtils]: 33: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:41,814 INFO L290 TraceCheckUtils]: 34: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:37:41,815 INFO L290 TraceCheckUtils]: 35: Hoare triple {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:37:41,815 INFO L290 TraceCheckUtils]: 36: Hoare triple {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:37:41,815 INFO L290 TraceCheckUtils]: 37: Hoare triple {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:37:41,816 INFO L290 TraceCheckUtils]: 38: Hoare triple {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:37:41,816 INFO L290 TraceCheckUtils]: 39: Hoare triple {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:37:41,816 INFO L290 TraceCheckUtils]: 40: Hoare triple {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:37:41,817 INFO L290 TraceCheckUtils]: 41: Hoare triple {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:37:41,817 INFO L290 TraceCheckUtils]: 42: Hoare triple {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:37:41,817 INFO L290 TraceCheckUtils]: 43: Hoare triple {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:37:41,818 INFO L290 TraceCheckUtils]: 44: Hoare triple {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:41,818 INFO L290 TraceCheckUtils]: 45: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:41,818 INFO L290 TraceCheckUtils]: 46: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205000#(and (<= 11 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 11))} is VALID [2022-04-27 22:37:41,819 INFO L290 TraceCheckUtils]: 47: Hoare triple {205000#(and (<= 11 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 11))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:41,819 INFO L290 TraceCheckUtils]: 48: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:41,819 INFO L290 TraceCheckUtils]: 49: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:41,819 INFO L290 TraceCheckUtils]: 50: Hoare triple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:41,820 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {204968#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:37:41,820 INFO L290 TraceCheckUtils]: 52: Hoare triple {204968#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {204969#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:37:41,821 INFO L272 TraceCheckUtils]: 53: Hoare triple {204969#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {204970#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:37:41,821 INFO L290 TraceCheckUtils]: 54: Hoare triple {204970#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {204971#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:37:41,821 INFO L290 TraceCheckUtils]: 55: Hoare triple {204971#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {204920#false} is VALID [2022-04-27 22:37:41,821 INFO L290 TraceCheckUtils]: 56: Hoare triple {204920#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204920#false} is VALID [2022-04-27 22:37:41,821 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 0 proven. 134 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:37:41,821 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:37:41,821 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2010978850] [2022-04-27 22:37:41,821 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2010978850] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:37:41,822 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1800944925] [2022-04-27 22:37:41,822 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 22:37:41,822 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:37:41,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:37:41,822 INFO L229 MonitoredProcess]: Starting monitored process 82 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:37:41,823 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (82)] Waiting until timeout for monitored process [2022-04-27 22:37:41,925 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2022-04-27 22:37:41,925 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:37:41,926 INFO L263 TraceCheckSpWp]: Trace formula consists of 278 conjuncts, 71 conjunts are in the unsatisfiable core [2022-04-27 22:37:41,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:37:41,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:37:42,361 INFO L272 TraceCheckUtils]: 0: Hoare triple {204919#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {204919#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {204919#true} is VALID [2022-04-27 22:37:42,361 INFO L290 TraceCheckUtils]: 2: Hoare triple {204919#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,361 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {204919#true} {204919#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,361 INFO L272 TraceCheckUtils]: 4: Hoare triple {204919#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,361 INFO L290 TraceCheckUtils]: 5: Hoare triple {204919#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:42,361 INFO L290 TraceCheckUtils]: 6: Hoare triple {204919#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,361 INFO L272 TraceCheckUtils]: 7: Hoare triple {204919#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:42,362 INFO L290 TraceCheckUtils]: 8: Hoare triple {204919#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,362 INFO L290 TraceCheckUtils]: 9: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,362 INFO L290 TraceCheckUtils]: 10: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,363 INFO L290 TraceCheckUtils]: 11: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:37:42,363 INFO L290 TraceCheckUtils]: 12: Hoare triple {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:37:42,363 INFO L290 TraceCheckUtils]: 13: Hoare triple {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:37:42,364 INFO L290 TraceCheckUtils]: 14: Hoare triple {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:37:42,364 INFO L290 TraceCheckUtils]: 15: Hoare triple {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,364 INFO L290 TraceCheckUtils]: 16: Hoare triple {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,365 INFO L290 TraceCheckUtils]: 17: Hoare triple {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:37:42,365 INFO L290 TraceCheckUtils]: 18: Hoare triple {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:37:42,365 INFO L290 TraceCheckUtils]: 19: Hoare triple {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,366 INFO L290 TraceCheckUtils]: 20: Hoare triple {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,366 INFO L290 TraceCheckUtils]: 21: Hoare triple {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:42,366 INFO L290 TraceCheckUtils]: 22: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:42,367 INFO L290 TraceCheckUtils]: 23: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {205075#(and (<= 11 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:42,367 INFO L290 TraceCheckUtils]: 24: Hoare triple {205075#(and (<= 11 correct_version_~j~0) (= correct_version_~y~0 0) (<= correct_version_~j~0 11))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:42,367 INFO L290 TraceCheckUtils]: 25: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:42,368 INFO L290 TraceCheckUtils]: 26: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:42,368 INFO L290 TraceCheckUtils]: 27: Hoare triple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:42,368 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} {204919#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {204945#(and (<= |main_#t~ret8| 11) (<= 11 |main_#t~ret8|))} is VALID [2022-04-27 22:37:42,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {204945#(and (<= |main_#t~ret8| 11) (<= 11 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} is VALID [2022-04-27 22:37:42,369 INFO L272 TraceCheckUtils]: 30: Hoare triple {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:42,369 INFO L290 TraceCheckUtils]: 31: Hoare triple {204919#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:42,369 INFO L290 TraceCheckUtils]: 32: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:42,369 INFO L290 TraceCheckUtils]: 33: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:42,370 INFO L290 TraceCheckUtils]: 34: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:37:42,370 INFO L290 TraceCheckUtils]: 35: Hoare triple {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:37:42,370 INFO L290 TraceCheckUtils]: 36: Hoare triple {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:37:42,371 INFO L290 TraceCheckUtils]: 37: Hoare triple {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:37:42,371 INFO L290 TraceCheckUtils]: 38: Hoare triple {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:37:42,372 INFO L290 TraceCheckUtils]: 39: Hoare triple {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:37:42,372 INFO L290 TraceCheckUtils]: 40: Hoare triple {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:37:42,372 INFO L290 TraceCheckUtils]: 41: Hoare triple {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:37:42,373 INFO L290 TraceCheckUtils]: 42: Hoare triple {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:37:42,373 INFO L290 TraceCheckUtils]: 43: Hoare triple {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:37:42,373 INFO L290 TraceCheckUtils]: 44: Hoare triple {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:42,374 INFO L290 TraceCheckUtils]: 45: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:42,374 INFO L290 TraceCheckUtils]: 46: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205145#(and (<= 11 student_version_~j~1) (= student_version_~y~1 0) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:42,374 INFO L290 TraceCheckUtils]: 47: Hoare triple {205145#(and (<= 11 student_version_~j~1) (= student_version_~y~1 0) (<= student_version_~j~1 11))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:42,375 INFO L290 TraceCheckUtils]: 48: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:42,375 INFO L290 TraceCheckUtils]: 49: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:42,375 INFO L290 TraceCheckUtils]: 50: Hoare triple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:42,375 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {205161#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11) (<= |main_#t~ret9| 11) (<= 11 |main_#t~ret9|))} is VALID [2022-04-27 22:37:42,376 INFO L290 TraceCheckUtils]: 52: Hoare triple {205161#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11) (<= |main_#t~ret9| 11) (<= 11 |main_#t~ret9|))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {205165#(and (<= main_~n_stones2~0 11) (<= 11 main_~n_stones2~0) (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} is VALID [2022-04-27 22:37:42,376 INFO L272 TraceCheckUtils]: 53: Hoare triple {205165#(and (<= main_~n_stones2~0 11) (<= 11 main_~n_stones2~0) (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {205169#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:37:42,376 INFO L290 TraceCheckUtils]: 54: Hoare triple {205169#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {205173#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:37:42,377 INFO L290 TraceCheckUtils]: 55: Hoare triple {205173#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {204920#false} is VALID [2022-04-27 22:37:42,377 INFO L290 TraceCheckUtils]: 56: Hoare triple {204920#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204920#false} is VALID [2022-04-27 22:37:42,377 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 0 proven. 134 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:37:42,377 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:37:42,718 INFO L290 TraceCheckUtils]: 56: Hoare triple {204920#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204920#false} is VALID [2022-04-27 22:37:42,719 INFO L290 TraceCheckUtils]: 55: Hoare triple {205173#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {204920#false} is VALID [2022-04-27 22:37:42,719 INFO L290 TraceCheckUtils]: 54: Hoare triple {205169#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {205173#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:37:42,719 INFO L272 TraceCheckUtils]: 53: Hoare triple {204969#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {205169#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:37:42,720 INFO L290 TraceCheckUtils]: 52: Hoare triple {204968#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {204969#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:37:42,720 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {204968#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:37:42,721 INFO L290 TraceCheckUtils]: 50: Hoare triple {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:42,721 INFO L290 TraceCheckUtils]: 49: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {205002#(and (<= 11 |student_version_#res|) (<= |student_version_#res| 11))} is VALID [2022-04-27 22:37:42,721 INFO L290 TraceCheckUtils]: 48: Hoare triple {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:42,722 INFO L290 TraceCheckUtils]: 47: Hoare triple {205000#(and (<= 11 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 11))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205001#(and (<= student_version_~y~1 11) (<= 11 student_version_~y~1))} is VALID [2022-04-27 22:37:42,722 INFO L290 TraceCheckUtils]: 46: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {205000#(and (<= 11 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 11))} is VALID [2022-04-27 22:37:42,722 INFO L290 TraceCheckUtils]: 45: Hoare triple {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:42,723 INFO L290 TraceCheckUtils]: 44: Hoare triple {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204999#(and (<= 11 student_version_~j~1) (<= student_version_~j~1 11))} is VALID [2022-04-27 22:37:42,723 INFO L290 TraceCheckUtils]: 43: Hoare triple {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204998#(and (<= student_version_~j~1 10) (<= 10 student_version_~j~1))} is VALID [2022-04-27 22:37:42,723 INFO L290 TraceCheckUtils]: 42: Hoare triple {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204997#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:37:42,724 INFO L290 TraceCheckUtils]: 41: Hoare triple {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204996#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:37:42,724 INFO L290 TraceCheckUtils]: 40: Hoare triple {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204995#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:37:42,724 INFO L290 TraceCheckUtils]: 39: Hoare triple {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204994#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:37:42,725 INFO L290 TraceCheckUtils]: 38: Hoare triple {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204993#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:37:42,725 INFO L290 TraceCheckUtils]: 37: Hoare triple {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204992#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:37:42,725 INFO L290 TraceCheckUtils]: 36: Hoare triple {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204991#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:37:42,726 INFO L290 TraceCheckUtils]: 35: Hoare triple {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204990#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:37:42,726 INFO L290 TraceCheckUtils]: 34: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {204989#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:37:42,726 INFO L290 TraceCheckUtils]: 33: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:42,727 INFO L290 TraceCheckUtils]: 32: Hoare triple {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:42,727 INFO L290 TraceCheckUtils]: 31: Hoare triple {204919#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {204988#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:37:42,727 INFO L272 TraceCheckUtils]: 30: Hoare triple {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:42,727 INFO L290 TraceCheckUtils]: 29: Hoare triple {204945#(and (<= |main_#t~ret8| 11) (<= 11 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {204946#(and (<= 11 main_~n_stones1~0) (<= main_~n_stones1~0 11))} is VALID [2022-04-27 22:37:42,728 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} {204919#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {204945#(and (<= |main_#t~ret8| 11) (<= 11 |main_#t~ret8|))} is VALID [2022-04-27 22:37:42,728 INFO L290 TraceCheckUtils]: 27: Hoare triple {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:42,728 INFO L290 TraceCheckUtils]: 26: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {204987#(and (<= 11 |correct_version_#res|) (<= |correct_version_#res| 11))} is VALID [2022-04-27 22:37:42,728 INFO L290 TraceCheckUtils]: 25: Hoare triple {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:42,729 INFO L290 TraceCheckUtils]: 24: Hoare triple {204985#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 11) (<= 11 (+ correct_version_~j~0 correct_version_~y~0)))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {204986#(and (<= correct_version_~y~0 11) (<= 11 correct_version_~y~0))} is VALID [2022-04-27 22:37:42,729 INFO L290 TraceCheckUtils]: 23: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {204985#(and (<= (+ correct_version_~j~0 correct_version_~y~0) 11) (<= 11 (+ correct_version_~j~0 correct_version_~y~0)))} is VALID [2022-04-27 22:37:42,729 INFO L290 TraceCheckUtils]: 22: Hoare triple {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:42,730 INFO L290 TraceCheckUtils]: 21: Hoare triple {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204984#(and (<= 11 correct_version_~j~0) (<= correct_version_~j~0 11))} is VALID [2022-04-27 22:37:42,730 INFO L290 TraceCheckUtils]: 20: Hoare triple {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204983#(and (<= correct_version_~j~0 10) (<= 10 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,730 INFO L290 TraceCheckUtils]: 19: Hoare triple {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204982#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,731 INFO L290 TraceCheckUtils]: 18: Hoare triple {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204981#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:37:42,731 INFO L290 TraceCheckUtils]: 17: Hoare triple {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204980#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:37:42,732 INFO L290 TraceCheckUtils]: 16: Hoare triple {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204979#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,732 INFO L290 TraceCheckUtils]: 15: Hoare triple {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204978#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,732 INFO L290 TraceCheckUtils]: 14: Hoare triple {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204977#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:37:42,733 INFO L290 TraceCheckUtils]: 13: Hoare triple {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204976#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:37:42,733 INFO L290 TraceCheckUtils]: 12: Hoare triple {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204975#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:37:42,733 INFO L290 TraceCheckUtils]: 11: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {204974#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:37:42,734 INFO L290 TraceCheckUtils]: 10: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,734 INFO L290 TraceCheckUtils]: 9: Hoare triple {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,734 INFO L290 TraceCheckUtils]: 8: Hoare triple {204919#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {204973#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:37:42,734 INFO L272 TraceCheckUtils]: 7: Hoare triple {204919#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:42,734 INFO L290 TraceCheckUtils]: 6: Hoare triple {204919#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,734 INFO L290 TraceCheckUtils]: 5: Hoare triple {204919#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {204919#true} is VALID [2022-04-27 22:37:42,734 INFO L272 TraceCheckUtils]: 4: Hoare triple {204919#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,734 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {204919#true} {204919#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,735 INFO L290 TraceCheckUtils]: 2: Hoare triple {204919#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,735 INFO L290 TraceCheckUtils]: 1: Hoare triple {204919#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {204919#true} is VALID [2022-04-27 22:37:42,735 INFO L272 TraceCheckUtils]: 0: Hoare triple {204919#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204919#true} is VALID [2022-04-27 22:37:42,735 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 0 proven. 134 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 22:37:42,735 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1800944925] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:37:42,735 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:37:42,735 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [39, 38, 38] total 45 [2022-04-27 22:37:42,735 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1219125787] [2022-04-27 22:37:42,735 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:37:42,736 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 57 [2022-04-27 22:37:42,736 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:37:42,736 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:37:42,771 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-27 22:37:42,771 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 45 states [2022-04-27 22:37:42,772 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:37:42,772 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 45 interpolants. [2022-04-27 22:37:42,772 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=1883, Unknown=0, NotChecked=0, Total=1980 [2022-04-27 22:37:42,772 INFO L87 Difference]: Start difference. First operand 928 states and 1033 transitions. Second operand has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:38:01,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:38:01,884 INFO L93 Difference]: Finished difference Result 1052 states and 1172 transitions. [2022-04-27 22:38:01,884 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 40 states. [2022-04-27 22:38:01,884 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 57 [2022-04-27 22:38:01,884 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 22:38:01,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:38:01,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 238 transitions. [2022-04-27 22:38:01,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:38:01,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 238 transitions. [2022-04-27 22:38:01,888 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 238 transitions. [2022-04-27 22:38:02,067 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 238 edges. 238 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 22:38:02,134 INFO L225 Difference]: With dead ends: 1052 [2022-04-27 22:38:02,135 INFO L226 Difference]: Without dead ends: 1046 [2022-04-27 22:38:02,147 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 193 GetRequests, 108 SyntacticMatches, 5 SemanticMatches, 80 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 895 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=277, Invalid=6365, Unknown=0, NotChecked=0, Total=6642 [2022-04-27 22:38:02,148 INFO L413 NwaCegarLoop]: 126 mSDtfsCounter, 271 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 7781 mSolverCounterSat, 58 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 278 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 7839 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 58 IncrementalHoareTripleChecker+Valid, 7781 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.6s IncrementalHoareTripleChecker+Time [2022-04-27 22:38:02,148 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [278 Valid, 328 Invalid, 7839 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [58 Valid, 7781 Invalid, 0 Unknown, 0 Unchecked, 4.6s Time] [2022-04-27 22:38:02,149 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1046 states. [2022-04-27 22:38:12,550 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1046 to 944. [2022-04-27 22:38:12,551 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 22:38:12,552 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1046 states. Second operand has 944 states, 827 states have (on average 1.1305925030229746) internal successors, (935), 899 states have internal predecessors, (935), 41 states have call successors, (41), 5 states have call predecessors, (41), 75 states have return successors, (76), 39 states have call predecessors, (76), 39 states have call successors, (76) [2022-04-27 22:38:12,552 INFO L74 IsIncluded]: Start isIncluded. First operand 1046 states. Second operand has 944 states, 827 states have (on average 1.1305925030229746) internal successors, (935), 899 states have internal predecessors, (935), 41 states have call successors, (41), 5 states have call predecessors, (41), 75 states have return successors, (76), 39 states have call predecessors, (76), 39 states have call successors, (76) [2022-04-27 22:38:12,552 INFO L87 Difference]: Start difference. First operand 1046 states. Second operand has 944 states, 827 states have (on average 1.1305925030229746) internal successors, (935), 899 states have internal predecessors, (935), 41 states have call successors, (41), 5 states have call predecessors, (41), 75 states have return successors, (76), 39 states have call predecessors, (76), 39 states have call successors, (76) [2022-04-27 22:38:12,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:38:12,590 INFO L93 Difference]: Finished difference Result 1046 states and 1166 transitions. [2022-04-27 22:38:12,591 INFO L276 IsEmpty]: Start isEmpty. Operand 1046 states and 1166 transitions. [2022-04-27 22:38:12,608 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:38:12,608 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:38:12,609 INFO L74 IsIncluded]: Start isIncluded. First operand has 944 states, 827 states have (on average 1.1305925030229746) internal successors, (935), 899 states have internal predecessors, (935), 41 states have call successors, (41), 5 states have call predecessors, (41), 75 states have return successors, (76), 39 states have call predecessors, (76), 39 states have call successors, (76) Second operand 1046 states. [2022-04-27 22:38:12,609 INFO L87 Difference]: Start difference. First operand has 944 states, 827 states have (on average 1.1305925030229746) internal successors, (935), 899 states have internal predecessors, (935), 41 states have call successors, (41), 5 states have call predecessors, (41), 75 states have return successors, (76), 39 states have call predecessors, (76), 39 states have call successors, (76) Second operand 1046 states. [2022-04-27 22:38:12,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 22:38:12,646 INFO L93 Difference]: Finished difference Result 1046 states and 1166 transitions. [2022-04-27 22:38:12,646 INFO L276 IsEmpty]: Start isEmpty. Operand 1046 states and 1166 transitions. [2022-04-27 22:38:12,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 22:38:12,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 22:38:12,652 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 22:38:12,653 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 22:38:12,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 944 states, 827 states have (on average 1.1305925030229746) internal successors, (935), 899 states have internal predecessors, (935), 41 states have call successors, (41), 5 states have call predecessors, (41), 75 states have return successors, (76), 39 states have call predecessors, (76), 39 states have call successors, (76) [2022-04-27 22:38:12,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 944 states to 944 states and 1052 transitions. [2022-04-27 22:38:12,694 INFO L78 Accepts]: Start accepts. Automaton has 944 states and 1052 transitions. Word has length 57 [2022-04-27 22:38:12,694 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 22:38:12,702 INFO L495 AbstractCegarLoop]: Abstraction has 944 states and 1052 transitions. [2022-04-27 22:38:12,703 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:38:12,703 INFO L276 IsEmpty]: Start isEmpty. Operand 944 states and 1052 transitions. [2022-04-27 22:38:12,710 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-27 22:38:12,710 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 22:38:12,710 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 22:38:12,729 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (82)] Forceful destruction successful, exit code 0 [2022-04-27 22:38:12,923 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable90,82 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:38:12,923 INFO L420 AbstractCegarLoop]: === Iteration 92 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 22:38:12,923 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 22:38:12,924 INFO L85 PathProgramCache]: Analyzing trace with hash 909467431, now seen corresponding path program 82 times [2022-04-27 22:38:12,924 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 22:38:12,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1015459207] [2022-04-27 22:38:12,924 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 22:38:12,924 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 22:38:12,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:38:13,002 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 22:38:13,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:38:13,004 INFO L290 TraceCheckUtils]: 0: Hoare triple {210535#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {210482#true} is VALID [2022-04-27 22:38:13,004 INFO L290 TraceCheckUtils]: 1: Hoare triple {210482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:13,004 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {210482#true} {210482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:13,004 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-04-27 22:38:13,010 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:38:13,247 INFO L290 TraceCheckUtils]: 0: Hoare triple {210482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,248 INFO L290 TraceCheckUtils]: 1: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,248 INFO L290 TraceCheckUtils]: 2: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,249 INFO L290 TraceCheckUtils]: 3: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,249 INFO L290 TraceCheckUtils]: 4: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:38:13,250 INFO L290 TraceCheckUtils]: 5: Hoare triple {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:38:13,250 INFO L290 TraceCheckUtils]: 6: Hoare triple {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:38:13,251 INFO L290 TraceCheckUtils]: 7: Hoare triple {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:38:13,251 INFO L290 TraceCheckUtils]: 8: Hoare triple {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,252 INFO L290 TraceCheckUtils]: 9: Hoare triple {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,253 INFO L290 TraceCheckUtils]: 10: Hoare triple {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:38:13,253 INFO L290 TraceCheckUtils]: 11: Hoare triple {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:38:13,254 INFO L290 TraceCheckUtils]: 12: Hoare triple {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,254 INFO L290 TraceCheckUtils]: 13: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,255 INFO L290 TraceCheckUtils]: 14: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210546#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:38:13,255 INFO L290 TraceCheckUtils]: 15: Hoare triple {210546#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210547#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} is VALID [2022-04-27 22:38:13,256 INFO L290 TraceCheckUtils]: 16: Hoare triple {210547#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:13,256 INFO L290 TraceCheckUtils]: 17: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:13,256 INFO L290 TraceCheckUtils]: 18: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:13,257 INFO L290 TraceCheckUtils]: 19: Hoare triple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:13,257 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {210482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {210508#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:38:13,258 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 30 [2022-04-27 22:38:13,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:38:13,498 INFO L290 TraceCheckUtils]: 0: Hoare triple {210482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,498 INFO L290 TraceCheckUtils]: 1: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,499 INFO L290 TraceCheckUtils]: 2: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,499 INFO L290 TraceCheckUtils]: 3: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,499 INFO L290 TraceCheckUtils]: 4: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:38:13,500 INFO L290 TraceCheckUtils]: 5: Hoare triple {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:38:13,500 INFO L290 TraceCheckUtils]: 6: Hoare triple {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:38:13,500 INFO L290 TraceCheckUtils]: 7: Hoare triple {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:38:13,501 INFO L290 TraceCheckUtils]: 8: Hoare triple {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:38:13,501 INFO L290 TraceCheckUtils]: 9: Hoare triple {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:38:13,501 INFO L290 TraceCheckUtils]: 10: Hoare triple {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:38:13,502 INFO L290 TraceCheckUtils]: 11: Hoare triple {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:38:13,502 INFO L290 TraceCheckUtils]: 12: Hoare triple {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:13,502 INFO L290 TraceCheckUtils]: 13: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:13,503 INFO L290 TraceCheckUtils]: 14: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210560#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:38:13,503 INFO L290 TraceCheckUtils]: 15: Hoare triple {210560#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210561#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} is VALID [2022-04-27 22:38:13,504 INFO L290 TraceCheckUtils]: 16: Hoare triple {210561#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:13,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:13,504 INFO L290 TraceCheckUtils]: 18: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:13,504 INFO L290 TraceCheckUtils]: 19: Hoare triple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:13,505 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {210531#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:38:13,505 INFO L272 TraceCheckUtils]: 0: Hoare triple {210482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210535#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 22:38:13,505 INFO L290 TraceCheckUtils]: 1: Hoare triple {210535#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {210482#true} is VALID [2022-04-27 22:38:13,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {210482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:13,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210482#true} {210482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:13,506 INFO L272 TraceCheckUtils]: 4: Hoare triple {210482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:13,506 INFO L290 TraceCheckUtils]: 5: Hoare triple {210482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:13,506 INFO L290 TraceCheckUtils]: 6: Hoare triple {210482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:13,506 INFO L272 TraceCheckUtils]: 7: Hoare triple {210482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:13,506 INFO L290 TraceCheckUtils]: 8: Hoare triple {210482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,506 INFO L290 TraceCheckUtils]: 9: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,507 INFO L290 TraceCheckUtils]: 10: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,507 INFO L290 TraceCheckUtils]: 11: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,507 INFO L290 TraceCheckUtils]: 12: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:38:13,508 INFO L290 TraceCheckUtils]: 13: Hoare triple {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:38:13,508 INFO L290 TraceCheckUtils]: 14: Hoare triple {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:38:13,508 INFO L290 TraceCheckUtils]: 15: Hoare triple {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:38:13,509 INFO L290 TraceCheckUtils]: 16: Hoare triple {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,509 INFO L290 TraceCheckUtils]: 17: Hoare triple {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,510 INFO L290 TraceCheckUtils]: 18: Hoare triple {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:38:13,510 INFO L290 TraceCheckUtils]: 19: Hoare triple {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:38:13,510 INFO L290 TraceCheckUtils]: 20: Hoare triple {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,511 INFO L290 TraceCheckUtils]: 21: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:13,511 INFO L290 TraceCheckUtils]: 22: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210546#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:38:13,511 INFO L290 TraceCheckUtils]: 23: Hoare triple {210546#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210547#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} is VALID [2022-04-27 22:38:13,512 INFO L290 TraceCheckUtils]: 24: Hoare triple {210547#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:13,512 INFO L290 TraceCheckUtils]: 25: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:13,512 INFO L290 TraceCheckUtils]: 26: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:13,512 INFO L290 TraceCheckUtils]: 27: Hoare triple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:13,513 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {210482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {210508#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:38:13,513 INFO L290 TraceCheckUtils]: 29: Hoare triple {210508#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} is VALID [2022-04-27 22:38:13,513 INFO L272 TraceCheckUtils]: 30: Hoare triple {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:13,514 INFO L290 TraceCheckUtils]: 31: Hoare triple {210482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,514 INFO L290 TraceCheckUtils]: 32: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,514 INFO L290 TraceCheckUtils]: 33: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,514 INFO L290 TraceCheckUtils]: 34: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:13,515 INFO L290 TraceCheckUtils]: 35: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:38:13,515 INFO L290 TraceCheckUtils]: 36: Hoare triple {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:38:13,516 INFO L290 TraceCheckUtils]: 37: Hoare triple {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:38:13,516 INFO L290 TraceCheckUtils]: 38: Hoare triple {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:38:13,516 INFO L290 TraceCheckUtils]: 39: Hoare triple {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:38:13,517 INFO L290 TraceCheckUtils]: 40: Hoare triple {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:38:13,517 INFO L290 TraceCheckUtils]: 41: Hoare triple {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:38:13,518 INFO L290 TraceCheckUtils]: 42: Hoare triple {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:38:13,518 INFO L290 TraceCheckUtils]: 43: Hoare triple {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:13,518 INFO L290 TraceCheckUtils]: 44: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:13,518 INFO L290 TraceCheckUtils]: 45: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210560#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:38:13,519 INFO L290 TraceCheckUtils]: 46: Hoare triple {210560#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210561#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} is VALID [2022-04-27 22:38:13,519 INFO L290 TraceCheckUtils]: 47: Hoare triple {210561#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:13,520 INFO L290 TraceCheckUtils]: 48: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:13,520 INFO L290 TraceCheckUtils]: 49: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:13,520 INFO L290 TraceCheckUtils]: 50: Hoare triple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:13,521 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {210531#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:38:13,521 INFO L290 TraceCheckUtils]: 52: Hoare triple {210531#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {210532#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:38:13,521 INFO L272 TraceCheckUtils]: 53: Hoare triple {210532#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {210533#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 22:38:13,522 INFO L290 TraceCheckUtils]: 54: Hoare triple {210533#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {210534#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 22:38:13,522 INFO L290 TraceCheckUtils]: 55: Hoare triple {210534#(not (= __VERIFIER_assert_~cond 0))} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {210483#false} is VALID [2022-04-27 22:38:13,522 INFO L290 TraceCheckUtils]: 56: Hoare triple {210483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210483#false} is VALID [2022-04-27 22:38:13,522 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 0 proven. 96 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:38:13,522 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 22:38:13,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1015459207] [2022-04-27 22:38:13,523 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1015459207] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 22:38:13,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1967571132] [2022-04-27 22:38:13,523 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 22:38:13,523 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 22:38:13,523 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 22:38:13,524 INFO L229 MonitoredProcess]: Starting monitored process 83 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 22:38:13,525 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (83)] Waiting until timeout for monitored process [2022-04-27 22:38:13,656 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 22:38:13,656 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 22:38:13,657 INFO L263 TraceCheckSpWp]: Trace formula consists of 278 conjuncts, 67 conjunts are in the unsatisfiable core [2022-04-27 22:38:13,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 22:38:13,664 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 22:38:14,256 INFO L272 TraceCheckUtils]: 0: Hoare triple {210482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,256 INFO L290 TraceCheckUtils]: 1: Hoare triple {210482#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {210482#true} is VALID [2022-04-27 22:38:14,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {210482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,256 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210482#true} {210482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {210482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {210482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:14,257 INFO L290 TraceCheckUtils]: 6: Hoare triple {210482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,257 INFO L272 TraceCheckUtils]: 7: Hoare triple {210482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:14,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {210482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,258 INFO L290 TraceCheckUtils]: 10: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,258 INFO L290 TraceCheckUtils]: 11: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:38:14,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:38:14,260 INFO L290 TraceCheckUtils]: 14: Hoare triple {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:38:14,260 INFO L290 TraceCheckUtils]: 15: Hoare triple {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:38:14,261 INFO L290 TraceCheckUtils]: 16: Hoare triple {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,261 INFO L290 TraceCheckUtils]: 17: Hoare triple {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,262 INFO L290 TraceCheckUtils]: 18: Hoare triple {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:38:14,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:38:14,263 INFO L290 TraceCheckUtils]: 20: Hoare triple {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,263 INFO L290 TraceCheckUtils]: 21: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,263 INFO L290 TraceCheckUtils]: 22: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210633#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0) (= correct_version_~y~0 0))} is VALID [2022-04-27 22:38:14,264 INFO L290 TraceCheckUtils]: 23: Hoare triple {210633#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0) (= correct_version_~y~0 0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210637#(and (<= correct_version_~j~0 9) (= correct_version_~j~0 correct_version_~y~0) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,264 INFO L290 TraceCheckUtils]: 24: Hoare triple {210637#(and (<= correct_version_~j~0 9) (= correct_version_~j~0 correct_version_~y~0) (<= 9 correct_version_~j~0))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:14,265 INFO L290 TraceCheckUtils]: 25: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:14,265 INFO L290 TraceCheckUtils]: 26: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:14,265 INFO L290 TraceCheckUtils]: 27: Hoare triple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:14,266 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {210482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {210508#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:38:14,266 INFO L290 TraceCheckUtils]: 29: Hoare triple {210508#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} is VALID [2022-04-27 22:38:14,266 INFO L272 TraceCheckUtils]: 30: Hoare triple {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:14,267 INFO L290 TraceCheckUtils]: 31: Hoare triple {210482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,267 INFO L290 TraceCheckUtils]: 32: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,268 INFO L290 TraceCheckUtils]: 33: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,268 INFO L290 TraceCheckUtils]: 34: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,268 INFO L290 TraceCheckUtils]: 35: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:38:14,269 INFO L290 TraceCheckUtils]: 36: Hoare triple {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:38:14,269 INFO L290 TraceCheckUtils]: 37: Hoare triple {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:38:14,270 INFO L290 TraceCheckUtils]: 38: Hoare triple {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:38:14,270 INFO L290 TraceCheckUtils]: 39: Hoare triple {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:38:14,271 INFO L290 TraceCheckUtils]: 40: Hoare triple {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:38:14,271 INFO L290 TraceCheckUtils]: 41: Hoare triple {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:38:14,272 INFO L290 TraceCheckUtils]: 42: Hoare triple {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:38:14,272 INFO L290 TraceCheckUtils]: 43: Hoare triple {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:14,273 INFO L290 TraceCheckUtils]: 44: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:14,273 INFO L290 TraceCheckUtils]: 45: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210704#(and (= student_version_~y~1 0) (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:14,273 INFO L290 TraceCheckUtils]: 46: Hoare triple {210704#(and (= student_version_~y~1 0) (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210708#(and (= student_version_~j~1 student_version_~y~1) (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:14,274 INFO L290 TraceCheckUtils]: 47: Hoare triple {210708#(and (= student_version_~j~1 student_version_~y~1) (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:14,274 INFO L290 TraceCheckUtils]: 48: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:14,275 INFO L290 TraceCheckUtils]: 49: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:14,275 INFO L290 TraceCheckUtils]: 50: Hoare triple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:14,276 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {210724#(and (<= main_~n_stones1~0 18) (<= 18 |main_#t~ret9|) (<= 18 main_~n_stones1~0) (<= |main_#t~ret9| 18))} is VALID [2022-04-27 22:38:14,276 INFO L290 TraceCheckUtils]: 52: Hoare triple {210724#(and (<= main_~n_stones1~0 18) (<= 18 |main_#t~ret9|) (<= 18 main_~n_stones1~0) (<= |main_#t~ret9| 18))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {210728#(and (<= main_~n_stones1~0 18) (<= main_~n_stones2~0 18) (<= 18 main_~n_stones1~0) (<= 18 main_~n_stones2~0))} is VALID [2022-04-27 22:38:14,277 INFO L272 TraceCheckUtils]: 53: Hoare triple {210728#(and (<= main_~n_stones1~0 18) (<= main_~n_stones2~0 18) (<= 18 main_~n_stones1~0) (<= 18 main_~n_stones2~0))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {210732#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:38:14,277 INFO L290 TraceCheckUtils]: 54: Hoare triple {210732#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {210736#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:38:14,277 INFO L290 TraceCheckUtils]: 55: Hoare triple {210736#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {210483#false} is VALID [2022-04-27 22:38:14,277 INFO L290 TraceCheckUtils]: 56: Hoare triple {210483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210483#false} is VALID [2022-04-27 22:38:14,278 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 0 proven. 96 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:38:14,278 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 22:38:14,828 INFO L290 TraceCheckUtils]: 56: Hoare triple {210483#false} [146] L7-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210483#false} is VALID [2022-04-27 22:38:14,829 INFO L290 TraceCheckUtils]: 55: Hoare triple {210736#(<= 1 __VERIFIER_assert_~cond)} [139] L6-->L7: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {210483#false} is VALID [2022-04-27 22:38:14,829 INFO L290 TraceCheckUtils]: 54: Hoare triple {210732#(<= 1 |__VERIFIER_assert_#in~cond|)} [133] __VERIFIER_assertENTRY-->L6: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {210736#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 22:38:14,830 INFO L272 TraceCheckUtils]: 53: Hoare triple {210532#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} [129] L97-2-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~n_stones1~0_5 v_main_~n_stones2~0_4) 1 0)) InVars {main_~n_stones2~0=v_main_~n_stones2~0_4, main_~n_stones1~0=v_main_~n_stones1~0_5} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~n_stones2~0, main_~n_stones1~0] {210732#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 22:38:14,830 INFO L290 TraceCheckUtils]: 52: Hoare triple {210531#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} [141] L105-1-->L97-2: Formula: (and (<= 0 (+ |v_main_#t~ret9_2| 2147483648)) (<= |v_main_#t~ret9_2| 2147483647) (= |v_main_#t~ret9_2| v_main_~n_stones2~0_1)) InVars {main_#t~ret9=|v_main_#t~ret9_2|} OutVars{main_~n_stones2~0=v_main_~n_stones2~0_1} AuxVars[] AssignedVars[main_~n_stones2~0, main_#t~ret9] {210532#(and (<= main_~n_stones1~0 main_~n_stones2~0) (< main_~n_stones2~0 (+ main_~n_stones1~0 1)))} is VALID [2022-04-27 22:38:14,831 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [171] student_versionEXIT-->L105-1: AOR: Formula: (= |v_main_#t~ret9_4| |v_student_version_#resOutParam_1|) InVars {student_version_#res=|v_student_version_#resOutParam_1|} OutVars{main_#t~ret9=|v_main_#t~ret9_4|} AuxVars[] AssignedVars[student_version_#res, main_#t~ret9] LVA: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {210531#(and (<= main_~n_stones1~0 |main_#t~ret9|) (<= |main_#t~ret9| main_~n_stones1~0))} is VALID [2022-04-27 22:38:14,832 INFO L290 TraceCheckUtils]: 50: Hoare triple {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} [166] student_versionFINAL-->student_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:14,832 INFO L290 TraceCheckUtils]: 49: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [165] L79-3-->student_versionFINAL: Formula: (= v_student_version_~y~1_4 |v_student_version_#res_1|) InVars {student_version_~y~1=v_student_version_~y~1_4} OutVars{student_version_#res=|v_student_version_#res_1|, student_version_~y~1=v_student_version_~y~1_4} AuxVars[] AssignedVars[student_version_#res] {210563#(and (<= |student_version_#res| 18) (<= 18 |student_version_#res|))} is VALID [2022-04-27 22:38:14,832 INFO L290 TraceCheckUtils]: 48: Hoare triple {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} [162] L79-2-->L79-3: Formula: (not (< v_student_version_~x~1_2 v_student_version_~i~1_3)) InVars {student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} OutVars{student_version_~i~1=v_student_version_~i~1_3, student_version_~x~1=v_student_version_~x~1_2} AuxVars[] AssignedVars[] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:14,833 INFO L290 TraceCheckUtils]: 47: Hoare triple {210561#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210562#(and (<= student_version_~y~1 18) (<= 18 student_version_~y~1))} is VALID [2022-04-27 22:38:14,833 INFO L290 TraceCheckUtils]: 46: Hoare triple {210560#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} [163] L79-2-->L79-2: Formula: (and (= v_student_version_~x~1_3 (+ v_student_version_~x~1_4 1)) (= v_student_version_~y~1_2 (+ v_student_version_~j~1_4 v_student_version_~y~1_3)) (< v_student_version_~x~1_4 v_student_version_~i~1_5)) InVars {student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_3, student_version_~x~1=v_student_version_~x~1_4, student_version_~j~1=v_student_version_~j~1_4} OutVars{student_version_~i~1=v_student_version_~i~1_5, student_version_~y~1=v_student_version_~y~1_2, student_version_~x~1=v_student_version_~x~1_3, student_version_~j~1=v_student_version_~j~1_4} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210561#(and (<= 18 (+ student_version_~j~1 student_version_~y~1)) (<= (+ student_version_~j~1 student_version_~y~1) 18))} is VALID [2022-04-27 22:38:14,834 INFO L290 TraceCheckUtils]: 45: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [159] L71-2-->L79-2: Formula: (and (= v_student_version_~y~1_1 0) (= v_student_version_~x~1_1 0)) InVars {} OutVars{student_version_~x~1=v_student_version_~x~1_1, student_version_~y~1=v_student_version_~y~1_1} AuxVars[] AssignedVars[student_version_~y~1, student_version_~x~1] {210560#(and (<= (+ (* 2 student_version_~j~1) student_version_~y~1) 18) (<= 18 (+ (* 2 student_version_~j~1) student_version_~y~1)))} is VALID [2022-04-27 22:38:14,834 INFO L290 TraceCheckUtils]: 44: Hoare triple {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} [154] L71-1-->L71-2: Formula: (not (< v_student_version_~l~1_1 v_student_version_~m_1)) InVars {student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} OutVars{student_version_~l~1=v_student_version_~l~1_1, student_version_~m=v_student_version_~m_1} AuxVars[] AssignedVars[] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:14,835 INFO L290 TraceCheckUtils]: 43: Hoare triple {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210559#(and (<= student_version_~j~1 9) (<= 9 student_version_~j~1))} is VALID [2022-04-27 22:38:14,835 INFO L290 TraceCheckUtils]: 42: Hoare triple {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210558#(and (<= 8 student_version_~j~1) (<= student_version_~j~1 8))} is VALID [2022-04-27 22:38:14,836 INFO L290 TraceCheckUtils]: 41: Hoare triple {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210557#(and (<= student_version_~j~1 7) (<= 7 student_version_~j~1))} is VALID [2022-04-27 22:38:14,836 INFO L290 TraceCheckUtils]: 40: Hoare triple {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210556#(and (<= student_version_~j~1 6) (<= 6 student_version_~j~1))} is VALID [2022-04-27 22:38:14,837 INFO L290 TraceCheckUtils]: 39: Hoare triple {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210555#(and (<= student_version_~j~1 5) (<= 5 student_version_~j~1))} is VALID [2022-04-27 22:38:14,837 INFO L290 TraceCheckUtils]: 38: Hoare triple {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210554#(and (<= 4 student_version_~j~1) (<= student_version_~j~1 4))} is VALID [2022-04-27 22:38:14,838 INFO L290 TraceCheckUtils]: 37: Hoare triple {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210553#(and (<= student_version_~j~1 3) (<= 3 student_version_~j~1))} is VALID [2022-04-27 22:38:14,838 INFO L290 TraceCheckUtils]: 36: Hoare triple {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210552#(and (<= student_version_~j~1 2) (<= 2 student_version_~j~1))} is VALID [2022-04-27 22:38:14,839 INFO L290 TraceCheckUtils]: 35: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [155] L71-1-->L71-1: Formula: (and (= (+ v_student_version_~j~1_2 1) v_student_version_~j~1_1) (< v_student_version_~l~1_3 v_student_version_~m_2) (= (+ v_student_version_~a_2 v_student_version_~l~1_3) v_student_version_~l~1_2)) InVars {student_version_~l~1=v_student_version_~l~1_3, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_2, student_version_~m=v_student_version_~m_2} OutVars{student_version_~l~1=v_student_version_~l~1_2, student_version_~a=v_student_version_~a_2, student_version_~j~1=v_student_version_~j~1_1, student_version_~m=v_student_version_~m_2} AuxVars[] AssignedVars[student_version_~j~1, student_version_~l~1] {210551#(and (<= student_version_~j~1 1) (<= 1 student_version_~j~1))} is VALID [2022-04-27 22:38:14,839 INFO L290 TraceCheckUtils]: 34: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [150] L65-2-->L71-1: Formula: (not (< v_student_version_~b~1_4 v_student_version_~n_3)) InVars {student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} OutVars{student_version_~b~1=v_student_version_~b~1_4, student_version_~n=v_student_version_~n_3} AuxVars[] AssignedVars[] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,840 INFO L290 TraceCheckUtils]: 33: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,840 INFO L290 TraceCheckUtils]: 32: Hoare triple {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} [151] L65-2-->L65-2: Formula: (and (< v_student_version_~b~1_2 v_student_version_~n_1) (= (+ v_student_version_~i~1_2 1) v_student_version_~i~1_1) (= v_student_version_~b~1_1 (+ v_student_version_~a_1 v_student_version_~b~1_2))) InVars {student_version_~i~1=v_student_version_~i~1_2, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_2, student_version_~n=v_student_version_~n_1} OutVars{student_version_~i~1=v_student_version_~i~1_1, student_version_~a=v_student_version_~a_1, student_version_~b~1=v_student_version_~b~1_1, student_version_~n=v_student_version_~n_1} AuxVars[] AssignedVars[student_version_~i~1, student_version_~b~1] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,841 INFO L290 TraceCheckUtils]: 31: Hoare triple {210482#true} [142] student_versionENTRY-->L65-2: Formula: (and (= v_student_version_~b~1_3 0) (= v_student_version_~m_3 |v_student_version_#in~m_1|) (= v_student_version_~a_3 |v_student_version_#in~a_1|) (= v_student_version_~n_2 |v_student_version_#in~n_1|) (= v_student_version_~j~1_3 0) (= v_student_version_~l~1_4 0) (= v_student_version_~i~1_4 0)) InVars {student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_#in~a=|v_student_version_#in~a_1|} OutVars{student_version_~i~1=v_student_version_~i~1_4, student_version_#in~n=|v_student_version_#in~n_1|, student_version_#in~m=|v_student_version_#in~m_1|, student_version_~a=v_student_version_~a_3, student_version_~j~1=v_student_version_~j~1_3, student_version_~l~1=v_student_version_~l~1_4, student_version_~b~1=v_student_version_~b~1_3, student_version_~n=v_student_version_~n_2, student_version_#in~a=|v_student_version_#in~a_1|, student_version_~m=v_student_version_~m_3} AuxVars[] AssignedVars[student_version_~i~1, student_version_~a, student_version_~j~1, student_version_~l~1, student_version_~b~1, student_version_~n, student_version_~m] {210550#(and (<= student_version_~j~1 0) (<= 0 student_version_~j~1))} is VALID [2022-04-27 22:38:14,841 INFO L272 TraceCheckUtils]: 30: Hoare triple {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} [134] L105-->student_versionENTRY: Formula: (and (= v_main_~n~0_7 |v_student_version_#in~nInParam_1|) (= v_main_~m~0_7 |v_student_version_#in~mInParam_1|) (= |v_student_version_#in~aInParam_1| v_main_~a~0_7)) InVars {main_~n~0=v_main_~n~0_7, main_~m~0=v_main_~m~0_7, main_~a~0=v_main_~a~0_7} OutVars{student_version_#in~n=|v_student_version_#in~nInParam_1|, student_version_#in~m=|v_student_version_#in~mInParam_1|, student_version_#in~a=|v_student_version_#in~aInParam_1|} AuxVars[] AssignedVars[student_version_#in~n, student_version_#in~m, main_~m~0, main_~n~0, student_version_#in~a, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:14,841 INFO L290 TraceCheckUtils]: 29: Hoare triple {210508#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} [130] L104-1-->L105: Formula: (and (<= |v_main_#t~ret8_3| 2147483647) (= |v_main_#t~ret8_3| v_main_~n_stones1~0_4) (<= 0 (+ |v_main_#t~ret8_3| 2147483648))) InVars {main_#t~ret8=|v_main_#t~ret8_3|} OutVars{main_~n_stones1~0=v_main_~n_stones1~0_4} AuxVars[] AssignedVars[main_#t~ret8, main_~n_stones1~0] {210509#(and (<= main_~n_stones1~0 18) (<= 18 main_~n_stones1~0))} is VALID [2022-04-27 22:38:14,842 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} {210482#true} [170] correct_versionEXIT-->L104-1: AOR: Formula: (= |v_main_#t~ret8_4| |v_correct_version_#resOutParam_1|) InVars {correct_version_#res=|v_correct_version_#resOutParam_1|} OutVars{main_#t~ret8=|v_main_#t~ret8_4|} AuxVars[] AssignedVars[main_#t~ret8, correct_version_#res] LVA: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {210508#(and (<= |main_#t~ret8| 18) (<= 18 |main_#t~ret8|))} is VALID [2022-04-27 22:38:14,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} [164] correct_versionFINAL-->correct_versionEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:14,843 INFO L290 TraceCheckUtils]: 26: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [160] L52-3-->correct_versionFINAL: Formula: (= |v_correct_version_#res_1| v_correct_version_~y~0_3) InVars {correct_version_~y~0=v_correct_version_~y~0_3} OutVars{correct_version_#res=|v_correct_version_#res_1|, correct_version_~y~0=v_correct_version_~y~0_3} AuxVars[] AssignedVars[correct_version_#res] {210549#(and (<= |correct_version_#res| 18) (<= 18 |correct_version_#res|))} is VALID [2022-04-27 22:38:14,843 INFO L290 TraceCheckUtils]: 25: Hoare triple {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} [157] L52-2-->L52-3: Formula: (not (< v_correct_version_~x~0_1 v_correct_version_~i~0_1)) InVars {correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} OutVars{correct_version_~i~0=v_correct_version_~i~0_1, correct_version_~x~0=v_correct_version_~x~0_1} AuxVars[] AssignedVars[] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:14,844 INFO L290 TraceCheckUtils]: 24: Hoare triple {210547#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210548#(and (<= correct_version_~y~0 18) (<= 18 correct_version_~y~0))} is VALID [2022-04-27 22:38:14,844 INFO L290 TraceCheckUtils]: 23: Hoare triple {210546#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} [158] L52-2-->L52-2: Formula: (and (< v_correct_version_~x~0_3 v_correct_version_~i~0_3) (= (+ v_correct_version_~j~0_2 v_correct_version_~y~0_2) v_correct_version_~y~0_1) (= (+ v_correct_version_~x~0_3 1) v_correct_version_~x~0_2)) InVars {correct_version_~y~0=v_correct_version_~y~0_2, correct_version_~x~0=v_correct_version_~x~0_3, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} OutVars{correct_version_~y~0=v_correct_version_~y~0_1, correct_version_~x~0=v_correct_version_~x~0_2, correct_version_~i~0=v_correct_version_~i~0_3, correct_version_~j~0=v_correct_version_~j~0_2} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210547#(and (<= 18 (+ correct_version_~j~0 correct_version_~y~0)) (<= (+ correct_version_~j~0 correct_version_~y~0) 18))} is VALID [2022-04-27 22:38:14,845 INFO L290 TraceCheckUtils]: 22: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [152] L44-2-->L52-2: Formula: (and (= v_correct_version_~x~0_4 0) (= v_correct_version_~y~0_4 0)) InVars {} OutVars{correct_version_~y~0=v_correct_version_~y~0_4, correct_version_~x~0=v_correct_version_~x~0_4} AuxVars[] AssignedVars[correct_version_~y~0, correct_version_~x~0] {210546#(and (<= (+ correct_version_~y~0 (* correct_version_~j~0 2)) 18) (<= 18 (+ correct_version_~y~0 (* correct_version_~j~0 2))))} is VALID [2022-04-27 22:38:14,845 INFO L290 TraceCheckUtils]: 21: Hoare triple {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} [144] L44-1-->L44-2: Formula: (not (< v_correct_version_~l~0_2 v_correct_version_~m_2)) InVars {correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} OutVars{correct_version_~m=v_correct_version_~m_2, correct_version_~l~0=v_correct_version_~l~0_2} AuxVars[] AssignedVars[] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210545#(and (<= correct_version_~j~0 9) (<= 9 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,846 INFO L290 TraceCheckUtils]: 19: Hoare triple {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210544#(and (<= 8 correct_version_~j~0) (<= correct_version_~j~0 8))} is VALID [2022-04-27 22:38:14,847 INFO L290 TraceCheckUtils]: 18: Hoare triple {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210543#(and (<= 7 correct_version_~j~0) (<= correct_version_~j~0 7))} is VALID [2022-04-27 22:38:14,847 INFO L290 TraceCheckUtils]: 17: Hoare triple {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210542#(and (<= correct_version_~j~0 6) (<= 6 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,848 INFO L290 TraceCheckUtils]: 16: Hoare triple {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210541#(and (<= correct_version_~j~0 5) (<= 5 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,848 INFO L290 TraceCheckUtils]: 15: Hoare triple {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210540#(and (<= 4 correct_version_~j~0) (<= correct_version_~j~0 4))} is VALID [2022-04-27 22:38:14,849 INFO L290 TraceCheckUtils]: 14: Hoare triple {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210539#(and (<= 3 correct_version_~j~0) (<= correct_version_~j~0 3))} is VALID [2022-04-27 22:38:14,849 INFO L290 TraceCheckUtils]: 13: Hoare triple {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210538#(and (<= 2 correct_version_~j~0) (<= correct_version_~j~0 2))} is VALID [2022-04-27 22:38:14,850 INFO L290 TraceCheckUtils]: 12: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [145] L44-1-->L44-1: Formula: (and (< v_correct_version_~l~0_4 v_correct_version_~m_3) (= (+ v_correct_version_~l~0_4 v_correct_version_~a_3) v_correct_version_~l~0_3) (= (+ v_correct_version_~j~0_4 1) v_correct_version_~j~0_3)) InVars {correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_4, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_4} OutVars{correct_version_~m=v_correct_version_~m_3, correct_version_~l~0=v_correct_version_~l~0_3, correct_version_~a=v_correct_version_~a_3, correct_version_~j~0=v_correct_version_~j~0_3} AuxVars[] AssignedVars[correct_version_~l~0, correct_version_~j~0] {210537#(and (<= 1 correct_version_~j~0) (<= correct_version_~j~0 1))} is VALID [2022-04-27 22:38:14,850 INFO L290 TraceCheckUtils]: 11: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [136] L38-2-->L44-1: Formula: (not (< v_correct_version_~b~0_2 v_correct_version_~n_2)) InVars {correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} OutVars{correct_version_~n=v_correct_version_~n_2, correct_version_~b~0=v_correct_version_~b~0_2} AuxVars[] AssignedVars[] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,851 INFO L290 TraceCheckUtils]: 10: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,851 INFO L290 TraceCheckUtils]: 9: Hoare triple {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} [137] L38-2-->L38-2: Formula: (and (= (+ v_correct_version_~i~0_5 1) v_correct_version_~i~0_4) (= (+ v_correct_version_~b~0_4 v_correct_version_~a_2) v_correct_version_~b~0_3) (< v_correct_version_~b~0_4 v_correct_version_~n_3)) InVars {correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_5, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_4} OutVars{correct_version_~n=v_correct_version_~n_3, correct_version_~i~0=v_correct_version_~i~0_4, correct_version_~a=v_correct_version_~a_2, correct_version_~b~0=v_correct_version_~b~0_3} AuxVars[] AssignedVars[correct_version_~b~0, correct_version_~i~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,852 INFO L290 TraceCheckUtils]: 8: Hoare triple {210482#true} [131] correct_versionENTRY-->L38-2: Formula: (and (= |v_correct_version_#in~m_1| v_correct_version_~m_1) (= |v_correct_version_#in~a_1| v_correct_version_~a_1) (= v_correct_version_~i~0_2 0) (= v_correct_version_~l~0_1 0) (= |v_correct_version_#in~n_1| v_correct_version_~n_1) (= v_correct_version_~b~0_1 0) (= v_correct_version_~j~0_1 0)) InVars {correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_#in~n=|v_correct_version_#in~n_1|} OutVars{correct_version_~n=v_correct_version_~n_1, correct_version_~m=v_correct_version_~m_1, correct_version_#in~m=|v_correct_version_#in~m_1|, correct_version_~b~0=v_correct_version_~b~0_1, correct_version_#in~n=|v_correct_version_#in~n_1|, correct_version_#in~a=|v_correct_version_#in~a_1|, correct_version_~i~0=v_correct_version_~i~0_2, correct_version_~l~0=v_correct_version_~l~0_1, correct_version_~a=v_correct_version_~a_1, correct_version_~j~0=v_correct_version_~j~0_1} AuxVars[] AssignedVars[correct_version_~n, correct_version_~m, correct_version_~b~0, correct_version_~i~0, correct_version_~l~0, correct_version_~a, correct_version_~j~0] {210536#(and (<= correct_version_~j~0 0) (<= 0 correct_version_~j~0))} is VALID [2022-04-27 22:38:14,852 INFO L272 TraceCheckUtils]: 7: Hoare triple {210482#true} [128] L104-->correct_versionENTRY: Formula: (and (= v_main_~n~0_6 |v_correct_version_#in~nInParam_1|) (= v_main_~a~0_6 |v_correct_version_#in~aInParam_1|) (= v_main_~m~0_6 |v_correct_version_#in~mInParam_1|)) InVars {main_~n~0=v_main_~n~0_6, main_~m~0=v_main_~m~0_6, main_~a~0=v_main_~a~0_6} OutVars{correct_version_#in~a=|v_correct_version_#in~aInParam_1|, correct_version_#in~m=|v_correct_version_#in~mInParam_1|, correct_version_#in~n=|v_correct_version_#in~nInParam_1|} AuxVars[] AssignedVars[main_~m~0, correct_version_#in~m, correct_version_#in~n, correct_version_#in~a, main_~n~0, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L290 TraceCheckUtils]: 6: Hoare triple {210482#true} [126] L97-->L104: Formula: (and (<= 1 v_main_~m~0_3) (<= 1 v_main_~n~0_3) (<= v_main_~a~0_3 109) (<= v_main_~m~0_3 109) (<= 1 v_main_~a~0_3) (<= v_main_~n~0_3 109)) InVars {main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} OutVars{main_~n~0=v_main_~n~0_3, main_~m~0=v_main_~m~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L290 TraceCheckUtils]: 5: Hoare triple {210482#true} [124] mainENTRY-->L97: Formula: (and (= v_main_~n_stones2~0_3 |v_main_#t~nondet7_2|) (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= |v_main_#t~nondet6_2| 2147483647) (= v_main_~n_stones1~0_2 v_main_~n_stones2~0_3) (= v_main_~n~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet7_2| 2147483648)) (= v_main_~m~0_2 |v_main_#t~nondet6_2|) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet6_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (<= |v_main_#t~nondet7_2| 2147483647)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|, main_#t~nondet7=|v_main_#t~nondet7_2|, main_#t~nondet6=|v_main_#t~nondet6_2|} OutVars{main_~n~0=v_main_~n~0_2, main_~m~0=v_main_~m~0_2, main_~n_stones2~0=v_main_~n_stones2~0_3, main_~n_stones1~0=v_main_~n_stones1~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_#t~nondet7, main_#t~nondet6, main_~m~0, main_~n~0, main_~n_stones2~0, main_~n_stones1~0, main_~a~0] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L272 TraceCheckUtils]: 4: Hoare triple {210482#true} [121] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210482#true} {210482#true} [167] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L290 TraceCheckUtils]: 2: Hoare triple {210482#true} [125] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L290 TraceCheckUtils]: 1: Hoare triple {210482#true} [122] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 16) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L272 TraceCheckUtils]: 0: Hoare triple {210482#true} [120] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {210482#true} is VALID [2022-04-27 22:38:14,852 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 0 proven. 96 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 22:38:14,852 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1967571132] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 22:38:14,853 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 22:38:14,853 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [37, 36, 36] total 45 [2022-04-27 22:38:14,853 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1693497501] [2022-04-27 22:38:14,853 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 22:38:14,853 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) Word has length 57 [2022-04-27 22:38:14,853 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 22:38:14,853 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 22:38:14,902 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-27 22:38:14,902 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 45 states [2022-04-27 22:38:14,902 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 22:38:14,903 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 45 interpolants. [2022-04-27 22:38:14,903 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=1879, Unknown=0, NotChecked=0, Total=1980 [2022-04-27 22:38:14,903 INFO L87 Difference]: Start difference. First operand 944 states and 1052 transitions. Second operand has 45 states, 42 states have (on average 1.3571428571428572) internal successors, (57), 39 states have internal predecessors, (57), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (4), 4 states have call predecessors, (4), 2 states have call successors, (4)